今回は、pythonの標準モジュールであるconcurren.futuresのThreadPoolExecutorとProcessPoolExecutorを使ってみました。 同じような計算を大量に回る際にはプログラムの高速化につながると思います。 もっと詳しく知りたい方は以下の書籍が良いかと思います。 Cython(サイソン)は、Pythonの記述の簡単さとC言語のスピードを併せ持ったハイブリッド型のプログラミング言語です。 Pythonの上位互換となる言語として今後活躍することが期待できそうです。 今回はCythonの概要と導入方法について説明します。 標準ライブラリのthreadingやmultiprocessingを使ったり、Python3.2で追加されたconcurrentを使って並列化することで高速化します。CPUがボトルネックでなければthreading、そうでなければmultiprocessingを使います。threadingのほうがデータの共有が簡単ですがGIL(Global Interpreter Lock)によりのCPU100%の壁を越えられないため、マルチコアCPUを使い切りたいのであれ … pythonのプログラムの実行を高速化する上で並列処理が挙げられると思います。自分自身、並列処理をよくわかっていなかったので、調べてまとめました。pythonで並列処理を調べてみると、よくあげられるモジュールがmultiprocessingとjoblibだったので、ここでは、multiprocessingについてまとめてみました。