概要
近頃は Python を使用してスクリプトを作成して様々な自動化やサーバー処理、機械学習などをされている方が多いかと思います。
Python はとてもシンプルで使いやすい反面、実行速度が遅いということが巷では言われていますよね。
そんな中、Python の実行速度を高速化するコードコンパイラを GitHub 上で発見しましたので、ご紹介しようと思います。
今回紹介する OSS は、実質的な Python コードのコンパイラで、C++ で作成された「Pycom」になります。
「Pycom」は Python の実行速度高速化を目的として作成された OSS コードコンパイラで、以下の処理などを得意としているそうです。
反復回数の多いループ:
for i in range(1, 1000001): if i % 3 == 0: print(i)
def is_prime(n): if n == 1: return 0 for i in range(2, n): if n%i == 0: return 0 return 1 def main(): total = 0 for i in range(1, 101): total += is_prime(i) print(total)
ベンチマーク結果:
上記のベンチマークを見ると、「Pycom」は CPython と比較しても相当高速化が行えていますね!
それでは早速「Pycom」のインストール方法などについて見ていきましょう!
利用手順
前提
- Python のバージョンは 3.10 以上が必要
colorama
モジュールをインストールする際に必要
インストール方法としては、GitHub のリポジトリをクローンすることで利用することができます。
以下のコマンドを利用してインストールください。
git clone https://github.com/Omyyyy/pycom.git cd pycom pip install -r requirements.txt pip install -e .
なお、pip install -e .
コマンドで作成される pycom.py.egg-info
フォルダーには触れないよう注意してください、と但し書きがあるのでご注意ください。
インストール後は以下のように使用することができます(インストール作業後のディレクトリにいることを想定)。
cd src/pycom pycom {実行したい Python スクリプト}
これにより、Python スクリプトを Pycom を利用して実行することができます。
使用感
実際に自分もインストールして使用してみました。
インストールしてしまえば、使い方は Python と同じ感じで利用できるので特にここで言及することもないですが、同じ使い方ができるという点はいいですね。
まとめ
今回は Python の実行速度高速化を目的として作成された OSS コードコンパイラ「Pycom」を紹介しました。
CPython と比較しても、実行速度は最高 20~30 倍も高速化されるということなので、これまで時間のかかっていた処理をこなす際は、こちらの「Pycom」の利用を検討されてみてはいかがでしょうか。
ただ、「Pycom」はまだまだ開発段階ということですべての Python バージョンとすべての Python 機能はまだ網羅されていないとあります。
- サポートされている機能
- サポートされていない機能
上記に注意しながら今後の開発に期待し、ぜひうまく活用していただけたらと思います!