Github: https://github.com/numba/numba
Numba
Python配列と数値関数のコンパイラ
NumbaはAnaconda、Inc.が主催するPythonのオープンソースNumPy対応最適化コンパイラです。Python構文をマシンコードにコンパイルするために、優れたLLVMコンパイラインフラストラクチャを使用しています。
NumPy配列は型付きメモリ領域として認識されているため、NumPy配列を使用してコードを高速化できます。 それ以外のタイプのコードはPython C-API呼び出しに変換され、 “インタープリタ”は効果的に削除されますが、動的間接は削除されません。
NumbaはトレースJITでもありません。 実行時型情報またはデコレータで指定した型情報を使用してコードが実行される前に、コードをコンパイルします。
Numbaは、Python構文から機械コードを生成し、NumPyに存在するものなどの型付きデータ構造を生成するためのメカニズムです。
依存関係
- llvmlite
- numpy(バージョン1.9以上)
- funcsigs(Python 2用)
インストール
numbaをインストールしてアップデートを入手する最も簡単な方法は、Anaconda Distributionを使用することです: https ://www.anaconda.com/download
$ conda install numba
ソースからNumbaをコンパイルする場合は、複数の独立した開発環境を維持するためにconda環境を使用することをお勧めします。 Numba開発のための新しい環境を作成するには:
$ conda create -p ~/dev/mynumba python numpy llvmlite
インストールされているバージョンを選択するには、パッケージ名に “= VERSION”を追加します。 “VERSION”はバージョン番号です。 例えば:
$ conda create -p ~/dev/mynumba python=2.7 numpy=1.9 llvmlite
Python 2.7とNumpy 1.9を使用する。
CUDAサポートが必要な場合は、CUDAツールキットもインストールする必要があります。
$ conda install cudatoolkit
これにより、CUDA Toolkitバージョン7.5がインストールされます。これには、ドライババージョン352.79以降がインストールされている必要があります。
カスタムPython環境
condaを使用していない場合は、llvmliteを自分でビルドする必要があります:
llvmliteのビルドとインストール
最新の手順については、 https://github.com/numba/llvmliteを参照してください 。 LLVM 5.0.xのビルドが必要です。
$ git clone https://github.com/numba/llvmlite $ cd llvmlite $ python setup.py install
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
または単に
$ pip install numba
CUDAサポートを有効にするには、CUDA Toolkit 7.5をインストールする必要があります。 ツールキットをインストールした後は、標準の検索パスを上書きするために環境変数を指定する必要があります。
- NUMBAPRO_CUDA_DRIVER
- CUDAドライバ共有ライブラリへのパス
- NUMBAPRO_NVVM
- CUDA libNVVM共有ライブラリファイルへのパス
- NUMBAPRO_LIBDEVICE
- .bcファイルを含むCUDA libNVVM libdeviceディレクトリへのパス
ドキュメンテーション
http://numba.pydata.org/numba-doc/dev/index.html
メーリングリスト
numbaメーリングリストnumba-users@continuum.ioに参加してください : https : //groups.google.com/a/continuum.io/d/forum/numba-users
またはGmaneミラーを介してアクセスします。http : //news.gmane.org/gmane.comp.python.numba.user
古いアーカイブはhttp://librelist.com/browser/numba/にあります。
ウェブサイト
スポンサーがあなたを助けることができるかどうか(このプロジェクトを助けることができるかどうか参照): https : //www.anaconda.com