ユーザ用ツール

サイト用ツール


python

差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
python [2019/09/13 07:14]
ともやん [パッケージ]
python [2019/09/21 01:04] (現在)
ともやん [JIT コンパイラ]
ライン 58: ライン 58:
 [[python:​wxpython|wxPython - クロス プラットフォーム GUIライブラリ]]\\ [[python:​wxpython|wxPython - クロス プラットフォーム GUIライブラリ]]\\
 [[javascript:​mochikit|MochiKit - A lightweight Javascript library]]\\ [[javascript:​mochikit|MochiKit - A lightweight Javascript library]]\\
 +
 +===== JIT コンパイラ =====
 +[[http://​numba.pydata.org/​|Numba:​ A High Performance Python Compiler]]\\
 + * Anaconda, Inc. が開発する Python コードの JIT コンパイラ\\
 + * 使い方は関数に @njit = @jit(nopython=True) デコレータを指定する\\
 + * @jit(int32(int32,​ int32)) のような型指定で更に高速化される\\
 + * @jit(nogil=True) によりマルチコアシステムを活用できる\\
 + * @jit(cache=True) によりプログラムを呼び出すたびに掛かるコンパイル時間を回避できる\\
 + * @jit(nopython=True,​ parallel=True) = @njit(parallel=True) により自動並列化による最適化を実行できる\\
 + * Numpy などは高速化できるが Pandas は Numba によって理解されないため高速化されない\\
 + * Numba は関数の Python バイトコードを LLVM を使用して CPU に合わせた関数のマシンコードバージョンを生成する\\
 + * [[https://​developer.nvidia.com/​cuda-zone|Nvidia CUDA]] および [[https://​rocm.github.io/​|AMD ROC]] GPU をターゲットにできる\\
 +
 +Pandas がボトルネックになってもカーネル関数に分離すれば Numba で最適化出来る。\\
 +[[https://​medium.com/​bcggamma/​bring-your-python-code-up-to-speed-with-numba-1aa1c0e52885|Bring Your Python Code Up to Speed with Numba - BCG GAMMA - Medium]]\\
  
 ===== 開発環境 ===== ===== 開発環境 =====
python.1568326456.txt.gz · 最終更新: 2019/09/13 07:14 by ともやん