私はプロジェクトオイラーに取り組んでいて、PyPyを使用してソリューションを高速化できるかどうか疑問に思いました。ただし、計算に時間がかかったため、結果は非常に残念でした。
d:\projeuler>pypy problem204.py
3462.08630405 mseconds
d:\projeuler>python problem204.py
1823.91602542 mseconds
ミリ秒の出力はPythonのtime
モジュールを使用して計算されたため、組み込みのベンチマークコマンドを使用して再度実行しました。
d:\projeuler>pypy -mtimeit -s "import problem204" "problem204._main()"
10 loops, best of 3: 465 msec per loop
d:\projeuler>python -mtimeit -s "import problem204" "problem204._main()"
10 loops, best of 3: 1.87 sec per loop
PyPyは、実行を完了するのに約0.5秒かかったと報告しています。ただし、pypy problem204を数回実行してみたところ、出力がベンチマークの0.5秒に近づくことはありませんでした。pypyとは異なり、pythonのmtimeitの結果は出力と一致しています。pypyは私に不正確なベンチマークを与えていますか、それとも私が理解していない魔法がありますか?