タグ

2010年11月25日のブックマーク (2件)

  • PyrexかCythonか - atsuoishimoto's diary

    【Q】 Pythonの拡張モジュール作成言語として、Pyrex と Cython のどちらを使うべきでしょうか? 【A】 できるだけCythonを使いましょう Pyrex は Greg Ewing氏による Pythonの拡張モジュール作成言語であり、CythonはPyrexをベースにStefan Behnel氏らを中心として開発されている。Pyrexの作者 Greg は Pyrex の開発をオープンソース的な手法で行うのを好まず、長年ソースコードリポジトリの公開やバグトラッカの開設に難色を示し続けた。で、ついに分裂してCythonプロジェクトのフォークという流れになってしまったのである。 現在ではPyrexの開発は停滞しており、GregもCythonのメーリングリストで議論したり修正をコミットしたりしているので、今後積極的にPyrexを使うことはお勧めできない。機能的にもCythonの方が

    PyrexかCythonか - atsuoishimoto's diary
    shimizukawa
    shimizukawa 2010/11/25
    Cythonやってみる気になった!
  • Cython 演習問題 解説 - atsuoishimoto's diary

    Cython 演習問題 演習1 素数判定 整数の簡単な演算を中心とした処理だが、このような処理を拡張モジュール化する場合の効果を確認してみよう。 まず、演習1-(A)のスクリプトをそのままCythonを使用して拡張モジュール化した場合では、 # Python版 $python -mtimeit "import prime;prime.primes(1000)" 10 loops, best of 3: 120 msec per loop# 拡張モジュール版 $python -mtimeit "import prime1;prime1.primes(1000)" 10 loops, best of 3: 79 msec per loopとなり、処理時間は30%程度短くなっている。この高速化はどのようにもたらされているのだろうか。 Pythonはスクリプトをバイトコードに変換し、仮想スタックマ

    Cython 演習問題 解説 - atsuoishimoto's diary