DISTRICT 37

なにか

Pythonのベンチマークライブラリ「Benchmarker」

f:id:dragstarclassic:20150420145354p:plain

ベンチマークって面白い

今のコンピュータは速度とかあまり気にしないで実行ができ、大体の処理はさっさと終わる。素数を探すとか天気をシミュレートするとかシビアな問題なら話は違ってくるが、大体はさっさと終わる。計算機としてのコンピュータってやっぱりすごい。

という事で、体感とは別に数字として確認できるように、pythonベンチマークライブラリ「Benchmarker」を導入してみた。これでアルゴリズムが変わるとどれだけ実行速度が変わるのか確認できる。

インストール

pip install Benchmarker

こんだけ。

使ってみる

挿入ソートで行ったベンチマークはこんな感じでとってみた

0から99の連続した数値をランダムに並べなおしたものを、list#sort()によるソートと挿入ソートとの実行速度を比較した値を確認できる。

## benchmarker:         release 4.0.1 (for python)
## python version:      2.7.6
## python compiler:     GCC 4.8.2
## python platform:     Linux-3.13.0-48-generic-i686-with-Ubuntu-14.04-trusty
## python executable:   /usr/bin/python
## cpu model:           Intel(R) Core(TM) i5-4310U CPU @ 2.00GHz  # 2501.058 MHz
## parameters:          loop=1000, cycle=1, extra=0

##                        real    (total    = user    + sys)
default                 0.0594    0.0600    0.0600    0.0000
insertion               0.3498    0.3500    0.3500    0.0000

## Ranking                real
default                 0.0594  (100.0) ********************
insertion               0.3498  ( 17.0) ***

## Matrix                 real    [01]    [02]
[01] default            0.0594   100.0   588.8
[02] insertion          0.3498    17.0   100.0