以前のBooのベンチマークテストをしてみてテストによってはbooiがpypyに負けているものもあるという結果が出たが、 最新版のbooiはだいぶ高速化されているようなので、再度ベンチマークテストをしてみた。
条件、環境は以下のとおり。
- マシンスペック
- Intel(R) Core(TM)2 Duo CPU P8800 @ 2.66GHz
- memory 4GB
- OS
- Booのインタプリタ、コンパイラは下記の2バージョンを使用
- Boo Compiler version 0.9.5.1 (3.2.8 (Debian 3.2.8+dfsg-4ubuntu1))
- Boo Compiler version 0.9.7.0 (3.2.8 (Debian 3.2.8+dfsg-4ubuntu1))
- pythonのバージョンは2.7.6
- pypyのバージョンは下記の通り
- [PyPy 2.2.1 with GCC 4.8.2]
- テストにははhttps://code.google.com/p/unladen-swallow/wiki/Benchmarks のbm_call_methodとbm_floatを 使用。
- 測定に使用したBooスクリプトは https://github.com/katonori/tiny_boo_benchmarks にコミット。
- 時間測定はpythonではtime.time(), booではSystem.Diagnostics.StopwatchのElapsedMillisecondsで行った。
- 測定箇所を100回実行した算術平均を結果とした。
結果は下記の通り。
bm_call_method
python |
0.42981 |
pypy |
0.01856 |
booi-0.9.5.1 |
0.00801 |
booc-0.9.5.1 |
0.00901 |
booi-0.9.7.0 |
0.00801 |
booc-0.9.7.0 |
0.00801 |
bm_float
python |
0.07578 |
pypy |
0.01522 |
booi-0.9.5.1 |
0.04145 |
booc-0.9.5.1 |
0.00784 |
booi-0.9.7.0 |
0.00817 |
booc-0.9.7.0 |
0.00784 |
booのバージョン0.9.7.0はすべての結果でpypyよりもいい結果が出ています。 あと、booiが0.9.5.1から0.9.7.0でだいぶ高速化されているようです。