All Projects → numba → Numba

numba / Numba

Licence: bsd-2-clause
NumPy aware dynamic Python compiler using LLVM

Programming Languages

python
139335 projects - #7 most used programming language
c
50402 projects - #5 most used programming language
C++
36643 projects - #6 most used programming language
shell
77523 projects
Batchfile
5799 projects
HTML
75241 projects

Projects that are alternatives of or similar to Numba

Hybridizer Basic Samples
Examples of C# code compiled to GPU by hybridizer
Stars: ✭ 186 (-97.38%)
Mutual labels:  compiler, parallel, cuda
Numba Scipy
numba_scipy extends Numba to make it aware of SciPy
Stars: ✭ 98 (-98.62%)
Mutual labels:  compiler, llvm, numpy
Ilgpu
ILGPU JIT Compiler for high-performance .Net GPU programs
Stars: ✭ 374 (-94.72%)
Mutual labels:  compiler, parallel, cuda
Cupy
NumPy & SciPy for GPU
Stars: ✭ 5,625 (-20.66%)
Mutual labels:  numpy, cuda, rocm
Sericum
(Toy) Compiler Infrastructure influenced by LLVM written in Rust
Stars: ✭ 366 (-94.84%)
Mutual labels:  compiler, llvm
Pipelines
An experimental programming language for data flow
Stars: ✭ 354 (-95.01%)
Mutual labels:  compiler, parallel
Nlvm
LLVM-based compiler for the Nim language
Stars: ✭ 380 (-94.64%)
Mutual labels:  compiler, llvm
Enzyme
High-performance automatic differentiation of LLVM.
Stars: ✭ 418 (-94.1%)
Mutual labels:  compiler, llvm
Speedy.js
Accelerate JavaScript Applications by Compiling to WebAssembly
Stars: ✭ 300 (-95.77%)
Mutual labels:  compiler, llvm
Bytecoder
Rich Domain Model for JVM Bytecode and Framework to interpret and transpile it.
Stars: ✭ 401 (-94.34%)
Mutual labels:  compiler, llvm
Langcraft
Compiler from LLVM IR to Minecraft datapacks.
Stars: ✭ 495 (-93.02%)
Mutual labels:  compiler, llvm
Bfc
An industrial-grade brainfuck compiler
Stars: ✭ 340 (-95.2%)
Mutual labels:  compiler, llvm
Staticscript
🎉🎉🎉 A new statically typed programming language, syntactically like TypeScript.
Stars: ✭ 337 (-95.25%)
Mutual labels:  compiler, llvm
Rhine Ml
🏞 an OCaml compiler for an untyped lisp
Stars: ✭ 621 (-91.24%)
Mutual labels:  compiler, llvm
Soll
SOLL is a new compiler for generate Ewasm from solidity and yul. See a demo here: https://asciinema.org/a/ezJqNLicn5fya02zwu4VXIo8a
Stars: ✭ 329 (-95.36%)
Mutual labels:  compiler, llvm
Scala Native
Your favorite language gets closer to bare metal.
Stars: ✭ 4,053 (-42.83%)
Mutual labels:  compiler, llvm
Taskflow
A General-purpose Parallel and Heterogeneous Task Programming System
Stars: ✭ 6,128 (-13.57%)
Mutual labels:  cuda, parallel
Llvmswift
A Swift wrapper for the LLVM C API (version 9.0.1)
Stars: ✭ 641 (-90.96%)
Mutual labels:  compiler, llvm
Deepc
vendor independent deep learning library, compiler and inference framework microcomputers and micro-controllers
Stars: ✭ 260 (-96.33%)
Mutual labels:  compiler, llvm
Awesome Cuda
This is a list of useful libraries and resources for CUDA development.
Stars: ✭ 274 (-96.14%)
Mutual labels:  parallel, cuda

Numba

Gitter Discourse Zenodo DOI

A Just-In-Time Compiler for Numerical Functions in Python

Numba is an open source, NumPy-aware optimizing compiler for Python sponsored by Anaconda, Inc. It uses the LLVM compiler project to generate machine code from Python syntax.

Numba can compile a large subset of numerically-focused Python, including many NumPy functions. Additionally, Numba has support for automatic parallelization of loops, generation of GPU-accelerated code, and creation of ufuncs and C callbacks.

For more information about Numba, see the Numba homepage: https://numba.pydata.org

Supported Platforms

  • Operating systems and CPUs:
    • Linux: x86 (32-bit), x86_64, ppc64le (POWER8 and 9), ARMv7 (32-bit), ARMv8 (64-bit).
    • Windows: x86, x86_64.
    • macOS: x86_64, (M1/Arm64, unofficial support only).
    • *BSD: (unofficial support only).
  • (Optional) Accelerators and GPUs:
    • NVIDIA GPUs (Kepler architecture or later) via CUDA driver on Linux and Windows.

Dependencies

  • Python versions: 3.7-3.10
  • llvmlite 0.38.*
  • NumPy >=1.18 (can build with 1.11 for ABI compatibility).

Optionally:

  • SciPy >=1.0.0 (for numpy.linalg support).

Installing

The easiest way to install Numba and get updates is by using the Anaconda Distribution: https://www.anaconda.com/download

$ conda install numba

For more options, see the Installation Guide: https://numba.readthedocs.io/en/stable/user/installing.html

Documentation

https://numba.readthedocs.io/en/stable/index.html

Contact

Numba has a discourse forum for discussions:

Continuous Integration

Azure Pipelines
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].