• 本当は、田舎に庵を建てて隠遁生活したいけど、先立つものも無いので自宅で..。

【Python】マルチプロセスとマルチスレッドの比較

concurrent.featureを使って、マルチプロセスとマルチスレッドの実行速度の比較を行ってみた。

結果

myfunc()を8回繰り返しているシングルスレッドの実行速度からmyfunc()の実行速度は1.2s程度だと算出できる。

マルチスレッドでは、GILが効いていてほとんど並列に実行されていない。 一方、マルチプロセスでは8個のプロセスがほぼ同時に実行されているように見える。

この結果から見ると、並列処理ではマルチプロセスを使ったほうがいいように思うけど、メモリ領域を共有した場合はどうなるかな..。 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA