Skip to main content

compiling Python code using LLVM

Project description

Numba is an Open Source NumPy-aware optimizing compiler for Python sponsored by Anaconda, Inc. It uses the remarkable LLVM compiler infrastructure to compile Python syntax to machine code.

It is aware of NumPy arrays as typed memory regions and so can speed-up code using NumPy arrays. Other, less well-typed code will be translated to Python C-API calls effectively removing the “interpreter” but not removing the dynamic indirection.

Numba is also not a tracing JIT. It compiles your code before it gets run either using run-time type information or type information you provide in the decorator.

Numba is a mechanism for producing machine code from Python syntax and typed data structures such as those that exist in NumPy.

Dependencies

  • llvmlite

  • numpy (version 1.7 or higher)

  • funcsigs (for Python 2)

Installing

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

$ conda install numba

If you wanted to compile Numba from source, it is recommended to use conda environment to maintain multiple isolated development environments. To create a new environment for Numba development:

$ conda create -p ~/dev/mynumba python numpy llvmlite

To select the installed version, append “=VERSION” to the package name, where, “VERSION” is the version number. For example:

$ conda create -p ~/dev/mynumba python=2.7 numpy=1.9 llvmlite

to use Python 2.7 and Numpy 1.9.

If you need CUDA support, you should also install the CUDA toolkit:

$ conda install cudatoolkit

This installs the CUDA Toolkit version 7.5, which requires driver version 352.79 or later to be installed.

Custom Python Environments

If you’re not using conda, you will need to build llvmlite yourself:

Building and installing llvmlite

See https://github.com/numba/llvmlite for the most up-to-date instructions. You will need a build of LLVM 4.0.x.

$ git clone https://github.com/numba/llvmlite
$ cd llvmlite
$ python setup.py install

Installing Numba

$ git clone https://github.com/numba/numba.git
$ cd numba
$ pip install -r requirements.txt
$ python setup.py build_ext --inplace
$ python setup.py install

or simply

$ pip install numba

If you want to enable CUDA support, you will need to install CUDA Toolkit 7.5. After installing the toolkit, you might have to specify environment variables in order to override the standard search paths:

NUMBAPRO_CUDA_DRIVER

Path to the CUDA driver shared library

NUMBAPRO_NVVM

Path to the CUDA libNVVM shared library file

NUMBAPRO_LIBDEVICE

Path to the CUDA libNVVM libdevice directory which contains .bc files

Documentation

http://numba.pydata.org/numba-doc/dev/index.html

Mailing Lists

Join the numba mailing list numba-users@continuum.io: https://groups.google.com/a/continuum.io/d/forum/numba-users

or access it through the Gmane mirror: http://news.gmane.org/gmane.comp.python.numba.user

Some old archives are at: http://librelist.com/browser/numba/

Website

See if our sponsor can help you (which can help this project): https://www.anaconda.com

http://numba.pydata.org

Continuous Integration

https://travis-ci.org/numba/numba

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

numba-0.35.0.tar.gz (1.3 MB view details)

Uploaded Source

Built Distributions

numba-0.35.0-cp36-cp36m-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.6m Windows x86-64

numba-0.35.0-cp36-cp36m-win32.whl (1.4 MB view details)

Uploaded CPython 3.6m Windows x86

numba-0.35.0-cp36-cp36m-manylinux1_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.6m

numba-0.35.0-cp36-cp36m-manylinux1_i686.whl (1.8 MB view details)

Uploaded CPython 3.6m

numba-0.35.0-cp36-cp36m-macosx_10_7_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.6m macOS 10.7+ x86-64

numba-0.35.0-cp35-cp35m-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.5m Windows x86-64

numba-0.35.0-cp35-cp35m-win32.whl (1.4 MB view details)

Uploaded CPython 3.5m Windows x86

numba-0.35.0-cp35-cp35m-manylinux1_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.5m

numba-0.35.0-cp35-cp35m-manylinux1_i686.whl (1.8 MB view details)

Uploaded CPython 3.5m

numba-0.35.0-cp35-cp35m-macosx_10_7_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.5m macOS 10.7+ x86-64

numba-0.35.0-cp27-cp27mu-manylinux1_x86_64.whl (1.8 MB view details)

Uploaded CPython 2.7mu

numba-0.35.0-cp27-cp27mu-manylinux1_i686.whl (1.8 MB view details)

Uploaded CPython 2.7mu

numba-0.35.0-cp27-cp27m-win_amd64.whl (1.4 MB view details)

Uploaded CPython 2.7m Windows x86-64

numba-0.35.0-cp27-cp27m-win32.whl (1.4 MB view details)

Uploaded CPython 2.7m Windows x86

numba-0.35.0-cp27-cp27m-macosx_10_7_x86_64.whl (1.4 MB view details)

Uploaded CPython 2.7m macOS 10.7+ x86-64

File details

Details for the file numba-0.35.0.tar.gz.

File metadata

  • Download URL: numba-0.35.0.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for numba-0.35.0.tar.gz
Algorithm Hash digest
SHA256 11564937757605bee590c5758c73cfe9fd6d569726b56d970316a6228971ecc3
MD5 4f447383406f54aaf18ffaba3a0e79e8
BLAKE2b-256 b74f892ba9fb833b613c23ea50ef3efd48bc064fc8382f519176c709306da0b8

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp36-cp36m-win_amd64.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 bec041e500d8439403bf495b36722c609e4ece26af4d7dda4ce655a2dc8979f6
MD5 16c6390f2e1f5f2488ff0a1e2c9080cb
BLAKE2b-256 94d57cffde8345b0c3ac401e5360bcc18c531df9d1a24354c16c38bbe88fe631

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp36-cp36m-win32.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 287df36d8bb03c70fbcb6f2bc86cedf4f2ebe92f1b9f7a13f5bc8472aa5293cf
MD5 82a56f15e2ddcf633fbb580e57d20912
BLAKE2b-256 262dedd66a7c9309ca1c137eda01e714a193e40a4bc53ba6599022ddd1bca7df

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 bbc3e4c9513656d60d6297686db6ae3cd0f06ad77fe637cab20728b0d889d213
MD5 e33d6da6730ffab5b6d8aaa63cb3b907
BLAKE2b-256 6a2671bf1c618e626c19c237099d754bdd489056173d9cf081de095c42463b52

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp36-cp36m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp36-cp36m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 72151900f6cea46aa388a3b06cfb267917a5d5085e2fcda3076e13a70b994b02
MD5 f23ae8f53b9fc2982d96377f3b459bd1
BLAKE2b-256 cf19a9deb47e72cb927728ddd7b53ffe5d8092ff5078deaccb52239cd972a497

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp36-cp36m-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp36-cp36m-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 247169d632d31aa1f379cea197f43491db89715b39aaa6fa0f5aa564cf912c6d
MD5 21642e37e4792e77127be64a14da0c8f
BLAKE2b-256 dcdbfb7cdad0c83b70272000f20550486e4a6e9095989c0f2870ef7ab6bb8919

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp35-cp35m-win_amd64.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 957a3d123303f6d631229a35e4ef349384d994ddfb5d080ebfa833728b8dd554
MD5 c5ec0c688929acd62fd29355b0c42bc7
BLAKE2b-256 49a24b852e5c6487cf4a1a69213d2ec9023c423aa0f10ed7fb5a748925b43f04

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp35-cp35m-win32.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 6f055324a30f6a0719addd09fc520e7abe96f1cb30d47a81b9dd0f02d1313912
MD5 1d04a1bc5308649837d90537140bade6
BLAKE2b-256 299f3890e3db75735407be0b25999d0495970a074935dda7c8fa9d441b0d24b1

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 dabdd6b815ec98a46e917d2b132bc4afcc1208eb6f6555bfe376b4b3b162408f
MD5 12beb58718a20af572ab19b53e871757
BLAKE2b-256 9e2efe30a0a9eb8b32112ae537d96ce9c5c715ab1669988140e53524e2798ffe

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp35-cp35m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp35-cp35m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 f8f90388316437773202e0bb38437ac0c8052a589cf7b33c5980a6ec5b14c32e
MD5 e15c87dbb1d4fbb860c473cd55552260
BLAKE2b-256 008708e87b1afc0dffa358f876391f33bcf671cd6b6bd9d68a56feeefe14bb39

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp35-cp35m-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp35-cp35m-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 4be9e67deef76e2185c439d9dd3a143ce3dd40064c24173fa360074a4c9bd6eb
MD5 0b833082639a5e13dba5a37c25c9827d
BLAKE2b-256 c21ac2ba1f0ae2a944237b8db4b18ec705dac41608bae1971ad6543677ab7999

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 5ebbcdf191532b03c099d348cd5d46f3fec876145f7f9a4cc39eadffa3ce3b00
MD5 ff955031b5bab009d6325cf36474905a
BLAKE2b-256 4388acd8dec1ab9aeb53910d78a07b5df274464ded8633e08874ffe1d70fd9a6

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp27-cp27mu-manylinux1_i686.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp27-cp27mu-manylinux1_i686.whl
Algorithm Hash digest
SHA256 fe9e2b95cf436ae8130341bd9512e9b4dbb2cfcb126141ff4f7184d770a0c970
MD5 566c0c59f85ce87ea06b05ba21111bf7
BLAKE2b-256 84e929c6a8b21a493608d04be86ba9450a874e3b15877584e66c1ec41efc1a97

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp27-cp27m-win_amd64.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 127ac000ceba4dfea8b01094c0d7285efd8157bff341f8eb266da8e990ea99f8
MD5 694cd331d7989b27278b51e708fc12da
BLAKE2b-256 34f2edb36576fc989fb063de3b8fae8fae90209b35bebfe271db5a9d8c539579

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp27-cp27m-win32.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp27-cp27m-win32.whl
Algorithm Hash digest
SHA256 e490773cce0a5ba8babd9f7e0e81a5ee3fd286675bd8b4a4619f0782ec58d139
MD5 ac28d7422ccad29146b1dbf3064298ed
BLAKE2b-256 106648434c5d3121e88ca5ece2fb0e413672696dc27a30813c7683e2dbb4c4c8

See more details on using hashes here.

File details

Details for the file numba-0.35.0-cp27-cp27m-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for numba-0.35.0-cp27-cp27m-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 77d9e3e470933586a90567c425dc58c2cf40a3a9959da3349d3573374696ec73
MD5 517b056efac1d0bf3f16c6a5d63ab5fa
BLAKE2b-256 bc294d008f78a8627dabc602c8667bd8cadea264b66501572d0c5d9eb874f65e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page