awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
numba avatar

numba/numba

0
View on GitHub↗
10,918 stars·1,230 forks·Python·bsd-2-clause·33 viewsnumba.pydata.org↗

Numba

Numba is a just-in-time compiler that translates high-level Python functions into optimized machine code at runtime. By leveraging the LLVM compiler infrastructure, it provides a framework for accelerating numerical data processing and mathematical computations, enabling performance levels comparable to statically compiled languages.

The project distinguishes itself through its ability to perform type-inference-based specialization, which generates machine instructions tailored to the specific data types used during execution. It employs a lazy compilation pipeline that defers translation until the moment of invocation, minimizing startup overhead while maintaining consistent performance across diverse processor architectures and operating systems.

Beyond core compilation, the toolkit provides extensive support for hardware acceleration by distributing iterative operations and array expressions across multiple CPU cores and graphics processing units. It utilizes vectorization and parallelization strategies to maximize throughput for large-scale numerical datasets, allowing developers to target specialized hardware directly from standard code.

Features

  • Python Compilers - Translates Python functions into optimized machine code at runtime to accelerate numerical computations.
  • Execution Performance Optimizers - Translates high-level mathematical functions into machine code at runtime to achieve native-like execution speeds.
  • Numeric Data Processing - Optimizes array operations and mathematical calculations to maximize efficiency for scientific and analytical workflows.
  • Just-in-Time Compilation Pipelines - Defers the translation of functions into machine code until the moment of first invocation to minimize startup overhead and optimize execution paths.
  • Just-in-Time Compilers - Translates high-level code into optimized native machine instructions at runtime for performance acceleration.
  • GPU Computations - Executes parallel algorithms on graphics hardware by targeting processing units directly within standard code.
  • GPU Acceleration - Enables GPU acceleration by executing parallel algorithms on specialized hardware directly within standard functions.
  • High-Performance and Parallel Computing - Distributes array operations and complex loops across multiple processor cores to improve performance.
  • Vectorized Array Operations - Optimizes numerical array operations by generating specialized machine instructions for large datasets.
  • Numerical Computing - Accelerates numerical computations by compiling mathematical functions into machine code at runtime.
  • CPU Optimizations - Distributes array expressions and loops across multiple processor cores using threading and vectorization techniques.
  • GPU Kernel Implementations - Offloads intensive computational workloads to graphics hardware by compiling standard code into parallel kernels.
  • Parallel Processing - Distributes array expressions and loops across multiple processor cores and graphics units to improve speed.
  • Numerical Libraries - Generates efficient machine code for mathematical functions to achieve high-performance numerical computing.
  • Parallel Processing - Distributes iterative operations across multiple processor cores and utilizes SIMD instructions to maximize throughput.
  • Runtime Specialization - Generates highly optimized machine code tailored to the specific data types used in each function call.
  • Parallel Processing - JIT compiler for high-performance Python code.
  • Scientific Computing - JIT compiler for scientific Python.
  • Data Manipulation Libraries - JIT compiler for fast Python and NumPy code.
  • Computation and Optimization - Compiler for Python array and numerical functions.
  • Parallel and High-Performance Computing - JIT compiler for high-performance Python code.
  • Scientific Computing - Listed in the “Scientific Computing” section of the Awesome Python awesome list.
  • Compilers - Leverages compiler infrastructure to generate specialized machine instructions for diverse CPU and GPU architectures.
  • Intermediate Representations - Uses modular compiler infrastructure to transform code into intermediate formats for cross-platform optimization.
  • Parallelizing Compilers - Automatically transforms code into parallel execution formats to ensure consistent performance across architectures.
  • Portable Application Distributions - Facilitates portable application deployment by distributing source code that compiles automatically at runtime.

Star history

Star history chart for numba/numbaStar history chart for numba/numba

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does numba/numba do?

Numba is a just-in-time compiler that translates high-level Python functions into optimized machine code at runtime. By leveraging the LLVM compiler infrastructure, it provides a framework for accelerating numerical data processing and mathematical computations, enabling performance levels comparable to statically compiled languages.

What are the main features of numba/numba?

The main features of numba/numba are: Python Compilers, Execution Performance Optimizers, Numeric Data Processing, Just-in-Time Compilation Pipelines, Just-in-Time Compilers, GPU Computations, GPU Acceleration, High-Performance and Parallel Computing.

What are some open-source alternatives to numba/numba?

Open-source alternatives to numba/numba include: cupy/cupy — CuPy is a CUDA array computing library that implements a NumPy-compatible interface for executing array operations and… dask/dask — Dask is a parallel computing framework and distributed task scheduler designed to scale Python data science workflows… fastai/numerical-linear-algebra — This project is a comprehensive library for numerical linear algebra and scientific computing, designed to provide… higherorderco/bend — Bend is a high-level parallel programming language and compiler designed to execute code across multi-core CPUs and… scipy/scipy — SciPy is a scientific computing library for Python that provides a comprehensive collection of mathematical algorithms… shapely/shapely — Shapely is a library for the manipulation and analysis of planar geometric objects, serving as a Python wrapper for…

Open-source alternatives to Numba

Similar open-source projects, ranked by how many features they share with Numba.
  • cupy/cupycupy avatar

    cupy/cupy

    11,000View on GitHub↗

    CuPy is a CUDA array computing library that implements a NumPy-compatible interface for executing array operations and numerical computing on NVIDIA GPUs. It serves as a GPU-accelerated numerical library and a CUDA-based SciPy implementation, offloading heavy calculations to graphics hardware to increase processing speed for scientific and engineering workloads. The library enables multi-framework tensor exchange, allowing data buffers to be shared between different deep learning frameworks using standardized memory layouts to avoid memory copies. It also supports custom GPU kernel integratio

    Python
    View on GitHub↗11,000
  • dask/daskdask avatar

    dask/dask

    13,746View on GitHub↗

    Dask is a parallel computing framework and distributed task scheduler designed to scale Python data science workflows from single machines to large clusters. It functions as a cluster resource manager that orchestrates computational logic by representing tasks and their dependencies as directed acyclic graphs. This architecture allows the system to automate the distribution of workloads across available hardware while managing complex execution requirements. The project distinguishes itself through a lazy evaluation engine that defers data operations until they are explicitly requested, enabl

    Pythondasknumpypandas
    View on GitHub↗13,746
  • fastai/numerical-linear-algebrafastai avatar

    fastai/numerical-linear-algebra

    10,703View on GitHub↗

    This project is a comprehensive library for numerical linear algebra and scientific computing, designed to provide optimized routines for matrix decomposition, statistical modeling, and high-performance data analysis. It serves as both a toolkit for solving complex linear systems and an educational resource for understanding the fundamental algorithms behind matrix factorizations and numerical solvers. The library distinguishes itself through a focus on randomized numerical linear algebra, utilizing probabilistic algorithms and approximate methods to perform dimensionality reduction and matri

    Jupyter Notebookalgorithmsdata-sciencedeep-learning
    View on GitHub↗10,703
  • higherorderco/bendHigherOrderCO avatar

    HigherOrderCO/Bend

    19,175View on GitHub↗

    Bend is a high-level parallel programming language and compiler designed to execute code across multi-core CPUs and GPUs automatically. By translating functional source code into a graph-based intermediate representation, it enables massive parallel execution without requiring manual management of threads, locks, or atomic operations. The runtime operates as an interaction net engine, where computations are represented as networks of nodes that reduce through local rewriting rules. This model utilizes a work-stealing scheduler to distribute tasks across thousands of hardware threads, ensuring

    Rust
    View on GitHub↗19,175
  • See all 30 alternatives to Numba→