awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
OpenMathLib avatar

OpenMathLib/OpenBLAS

0
View on GitHub↗
7,470 estrellas·1,690 forks·C·BSD-3-Clause·2 vistaswww.openblas.net↗

OpenBLAS

OpenBLAS is a high-performance implementation of the Basic Linear Algebra Subprograms standard designed for numerical computing and matrix operations. It serves as a hardware-accelerated numerical library and optimized math kernel library, providing a computational engine for large-scale matrix multiplication and vector operations.

The library distinguishes itself through the use of hand-tuned assembly kernels and SIMD instruction mapping, such as AVX and SVE, to maximize floating-point performance on specific CPU architectures. It features a multi-threaded framework that manages parallel execution and thread affinity, allowing for the distribution of heavy numerical workloads across multiple CPU cores.

Its broader capabilities include automatic and manual CPU architecture detection to select the most efficient binary kernels at runtime. It supports various floating-point precision levels, including single, double, complex, and half-precision formats, as well as configurable integer precision for handling larger data sets. The project provides C and Fortran interfaces for BLAS and LAPACK routines and supports cross-compilation for targeting specific hardware architectures.

Features

  • Linear Algebra Libraries - Provides a high-performance implementation of the BLAS standard for numerical computing and matrix operations.
  • Linear Algebra - Provides high-performance mathematical routines for vector and matrix operations used in scientific computing.
  • Numerical Computing Libraries - Provides a low-level library for high-performance linear algebra and multidimensional array operations.
  • Multi-threaded Matrix Operations - Executes large-scale linear algebra operations across multiple CPU threads to accelerate computation.
  • Assembly Kernels - Uses hand-tuned assembly kernels to maximize floating-point performance on specific CPU architectures.
  • CPU Instruction Optimizations - Implements low-level optimizations targeting specific processor instruction sets to maximize mathematical throughput.
  • Hardware-Targeted Compilation - Compiles routines into binaries specifically optimized for particular hardware revisions to maximize performance.
  • Hardware-Accelerated Numerical Libraries - Leverages SIMD instructions like AVX and SVE to accelerate complex mathematical computations on modern processors.
  • Kernel Optimizations - Implements hand-tuned assembly kernels and C routines to maximize floating-point performance on specific CPUs.
  • Linear Algebra Routines - Provides high-performance implementations of fundamental linear algebra routines for matrix and vector operations.
  • Vector Instruction Mapping - Maps specialized wide-bit vector instructions like AVX and SVE to hardware-accelerated intrinsics.
  • CPU Kernel Selection - Automatically detects the processor model at runtime to select the most efficient binary kernels.
  • Hardware-Specific Binaries - Produces machine code tailored to specific processor architectures through optimized build-time configurations.
  • Cross-Compilation Toolchains - Provides build environments to generate executable binaries for diverse hardware architectures from a single host.
  • Hardware Capability Detection - Identifies processor models at startup to automatically configure the software runtime for the best available kernels.
  • Multi-Architecture Hardware Targeting - Defines kernel configurations and maps hardware parameters to support multiple CPU architectures.
  • Architecture Detection - Identifies the processor model and revision at runtime to select the most compatible optimized binary.
  • CPU Affinity Binding - Binds specific threads to CPU cores to optimize cache usage and maximize processing efficiency.
  • Multi-threaded Memory Management - Manages internal memory buffers and threading backends to scale linear algebra operations across CPU cores.
  • Binary Cross-Compilation - Compiles optimized mathematical source code into executable binaries for diverse target architectures.
  • Floating Point Computation - Supports multiple floating-point formats, including single, double, complex, and half-precision, using native hardware instructions.
  • CPU Cache Block Tuning - Increases matrix multiplication speed by tuning cache block sizes and using hand-tuned assembly kernels.
  • Precision-Agnostic Wrappers - Creates C and Fortran wrappers that map generic mathematical calls to specific floating-point precision implementations.
  • Numerical Thread Control - Limits the maximum number of threads used for computations via environment variables to manage resources.
  • Parallel Computation Thread Pools - Uses parallel computation thread pools to balance performance and resource usage across different hardware.
  • Vector Instruction Targets - Utilizes specific vector instruction sets such as AVX and SVE to increase performance for math kernels.

Historial de estrellas

Gráfico del historial de estrellas de openmathlib/openblasGráfico del historial de estrellas de openmathlib/openblas

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Preguntas frecuentes

¿Qué hace openmathlib/openblas?

OpenBLAS is a high-performance implementation of the Basic Linear Algebra Subprograms standard designed for numerical computing and matrix operations. It serves as a hardware-accelerated numerical library and optimized math kernel library, providing a computational engine for large-scale matrix multiplication and vector operations.

¿Cuáles son las características principales de openmathlib/openblas?

Las características principales de openmathlib/openblas son: Linear Algebra Libraries, Linear Algebra, Numerical Computing Libraries, Multi-threaded Matrix Operations, Assembly Kernels, CPU Instruction Optimizations, Hardware-Targeted Compilation, Hardware-Accelerated Numerical Libraries.

¿Qué alternativas de código abierto existen para openmathlib/openblas?

Las alternativas de código abierto para openmathlib/openblas incluyen: xianyi/openblas — OpenBLAS is a high-performance library for basic linear algebra subprograms that provides optimized matrix and vector… joelgrus/data-science-from-scratch — This project is a collection of foundational machine learning algorithms and data science tools implemented in Python.… rust-ndarray/ndarray — ndarray is a multidimensional array library for Rust that serves as a linear algebra framework and scientific… numpy/numpy — NumPy is a foundational library for scientific computing in Python, providing a comprehensive framework for managing… lyhue1991/eat_tensorflow2_in_30_days — This project is a structured learning curriculum and technical reference for mastering deep learning with TensorFlow.… iree-org/iree — IREE is an MLIR-based compiler toolchain and runtime designed to translate machine learning models from various…

Alternativas open-source a OpenBLAS

Proyectos open-source similares, clasificados según cuántas características comparten con OpenBLAS.
  • xianyi/openblasAvatar de xianyi

    xianyi/OpenBLAS

    7,475Ver en GitHub↗

    OpenBLAS is a high-performance library for basic linear algebra subprograms that provides optimized matrix and vector operations. It serves as a multi-architecture math backend and numerical computing framework designed to execute complex mathematical calculations and high-speed numerical analysis. The library functions as an optimized CPU math library that detects hardware at runtime to apply the most efficient operation kernels for the specific processor. It supports multiple CPU targets through a combination of optimized assembly and C implementations. The project covers high-performance

    C
    Ver en GitHub↗7,475
  • joelgrus/data-science-from-scratchAvatar de joelgrus

    joelgrus/data-science-from-scratch

    9,636Ver en GitHub↗

    This project is a collection of foundational machine learning algorithms and data science tools implemented in Python. It focuses on building the logic of these tools using basic programming primitives rather than relying on specialized libraries. The implementation covers several core domains, including a linear algebra library for matrix and vector operations, a statistical analysis toolkit for probability and hypothesis testing, and a framework for map-reduce distributed processing. It also includes implementations for natural language processing, graph theory for network analysis, and var

    Python
    Ver en GitHub↗9,636
  • rust-ndarray/ndarrayAvatar de rust-ndarray

    rust-ndarray/ndarray

    4,290Ver en GitHub↗

    ndarray is a multidimensional array library for Rust that serves as a linear algebra framework and scientific computing tool. It provides the core infrastructure for creating and manipulating n-dimensional arrays, functioning as both a parallel array processor and a toolkit for numerical data analysis. The library distinguishes itself by providing efficient slicing and memory views, allowing for data sharing without copying. It leverages optimized backend math libraries for high-speed matrix multiplication and distributes heavy mathematical iterations across multiple CPU threads to accelerate

    Rust
    Ver en GitHub↗4,290
  • numpy/numpyAvatar de numpy

    numpy/numpy

    32,207Ver en GitHub↗

    NumPy is a foundational library for scientific computing in Python, providing a comprehensive framework for managing and manipulating large-scale numerical information. It centers on high-performance multidimensional array objects that serve as the primary data structure for complex mathematical operations and data analysis workflows. The library distinguishes itself through specialized mechanisms for handling multidimensional data, including advanced indexing, slicing, and broadcasting techniques that allow for efficient operations across arrays of varying shapes. It utilizes strided metadat

    Pythonnumpypython
    Ver en GitHub↗32,207
  • Ver las 30 alternativas a OpenBLAS→