ruby 1.9.3p327 (2012-11-10 revision 37606) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1335.85s user 7.10s system 184% cpu 12:07.79
total
make -j 2 2> /dev/null 1336.54s user 7.17s system 184% cpu 12:07.80
total
make -j 2 2> /dev/null 1340.71s user 7.23s system 184% cpu 12:10.69
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1626.45s user 8.08s system 184% cpu 14:48.20
total
make -j 2 2> /dev/null 1633.40s user 8.10s system 185% cpu 14:46.92
total
make -j 2 2> /dev/null 1631.37s user 7.86s system 184% cpu 14:50.18
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.7.2
make -j 2 2> /dev/null 1531.83s user 7.85s system 184% cpu 13:53.04
total
make -j 2 2> /dev/null 1533.46s user 7.97s system 184% cpu 13:54.54
total
make -j 2 2> /dev/null 1532.89s user 8.03s system 184% cpu 13:53.33
total
== 備考
adlint_sma コマンドは、最初のソースコード読み込み時と最後の解析結果書き出し時に
IO が走る以外は、オンメモリで計算のみを実行しています。
データ構造は木構造が多く、再帰処理を多用し、小さな一時オブジェクトを多く new し
ています。
Issue #7356 has been updated by tarui (Masaya T.).
windowsではあまり変わらないみたいです。
linuxだとどこが問題なんですかね。
== 測定環境
OS 名 Microsoft Windows 7 Home Premium
バージョン 6.1.7601 Service Pack 1 ビルド 7601
システムの種類 x64-ベース PC
プロセッサ Intel(R) Core™ i7-3770K CPU @ 3.50GHz、3501 Mhz、4 個のコア、8
個のロジカル プロセッサ
インストール済みの物理メモリ (RAM) 16.0 GB
ruby 1.9.3p327 (2012-11-10 revision 37606) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1335.85s user 7.10s system 184% cpu 12:07.79
total
make -j 2 2> /dev/null 1336.54s user 7.17s system 184% cpu 12:07.80
total
make -j 2 2> /dev/null 1340.71s user 7.23s system 184% cpu 12:10.69
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1626.45s user 8.08s system 184% cpu 14:48.20
total
make -j 2 2> /dev/null 1633.40s user 8.10s system 185% cpu 14:46.92
total
make -j 2 2> /dev/null 1631.37s user 7.86s system 184% cpu 14:50.18
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.7.2
make -j 2 2> /dev/null 1531.83s user 7.85s system 184% cpu 13:53.04
total
make -j 2 2> /dev/null 1533.46s user 7.97s system 184% cpu 13:54.54
total
make -j 2 2> /dev/null 1532.89s user 8.03s system 184% cpu 13:53.33
total
== 備考
adlint_sma コマンドは、最初のソースコード読み込み時と最後の解析結果書き出し時に
IO が走る以外は、オンメモリで計算のみを実行しています。
データ構造は木構造が多く、再帰処理を多用し、小さな一時オブジェクトを多く new し
ています。
ruby 1.9.3p327 (2012-11-10 revision 37606) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1335.85s user 7.10s system 184% cpu 12:07.79
total
make -j 2 2> /dev/null 1336.54s user 7.17s system 184% cpu 12:07.80
total
make -j 2 2> /dev/null 1340.71s user 7.23s system 184% cpu 12:10.69
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1626.45s user 8.08s system 184% cpu 14:48.20
total
make -j 2 2> /dev/null 1633.40s user 8.10s system 185% cpu 14:46.92
total
make -j 2 2> /dev/null 1631.37s user 7.86s system 184% cpu 14:50.18
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.7.2
make -j 2 2> /dev/null 1531.83s user 7.85s system 184% cpu 13:53.04
total
make -j 2 2> /dev/null 1533.46s user 7.97s system 184% cpu 13:54.54
total
make -j 2 2> /dev/null 1532.89s user 8.03s system 184% cpu 13:53.33
total
== 備考
adlint_sma コマンドは、最初のソースコード読み込み時と最後の解析結果書き出し時に
IO が走る以外は、オンメモリで計算のみを実行しています。
データ構造は木構造が多く、再帰処理を多用し、小さな一時オブジェクトを多く new し
ています。
ruby 1.9.3p327 (2012-11-10 revision 37606) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1335.85s user 7.10s system 184% cpu 12:07.79
total
make -j 2 2> /dev/null 1336.54s user 7.17s system 184% cpu 12:07.80
total
make -j 2 2> /dev/null 1340.71s user 7.23s system 184% cpu 12:10.69
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1626.45s user 8.08s system 184% cpu 14:48.20
total
make -j 2 2> /dev/null 1633.40s user 8.10s system 185% cpu 14:46.92
total
make -j 2 2> /dev/null 1631.37s user 7.86s system 184% cpu 14:50.18
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.7.2
make -j 2 2> /dev/null 1531.83s user 7.85s system 184% cpu 13:53.04
total
make -j 2 2> /dev/null 1533.46s user 7.97s system 184% cpu 13:54.54
total
make -j 2 2> /dev/null 1532.89s user 8.03s system 184% cpu 13:53.33
total
== 備考
adlint_sma コマンドは、最初のソースコード読み込み時と最後の解析結果書き出し時に
IO が走る以外は、オンメモリで計算のみを実行しています。
データ構造は木構造が多く、再帰処理を多用し、小さな一時オブジェクトを多く new し
ています。
ruby 1.9.3p327 (2012-11-10 revision 37606) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1335.85s user 7.10s system 184% cpu 12:07.79
total
make -j 2 2> /dev/null 1336.54s user 7.17s system 184% cpu 12:07.80
total
make -j 2 2> /dev/null 1340.71s user 7.23s system 184% cpu 12:10.69
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1626.45s user 8.08s system 184% cpu 14:48.20
total
make -j 2 2> /dev/null 1633.40s user 8.10s system 185% cpu 14:46.92
total
make -j 2 2> /dev/null 1631.37s user 7.86s system 184% cpu 14:50.18
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.7.2
make -j 2 2> /dev/null 1531.83s user 7.85s system 184% cpu 13:53.04
total
make -j 2 2> /dev/null 1533.46s user 7.97s system 184% cpu 13:54.54
total
make -j 2 2> /dev/null 1532.89s user 8.03s system 184% cpu 13:53.33
total
== 備考
adlint_sma コマンドは、最初のソースコード読み込み時と最後の解析結果書き出し時に
IO が走る以外は、オンメモリで計算のみを実行しています。
データ構造は木構造が多く、再帰処理を多用し、小さな一時オブジェクトを多く new し
ています。
% gem install adlint-benchmark
% adlint_bm -p
user system total
real
screen-4.0.3/process.c.small 16.040000 0.050000 16.090000 (
16.228486)
16.430s user, 0.070s system, 00:00:16.50 total
== オリジナルの process.c 版で測定
% adlint_bm -t “screen-4.0.3/process.c” -p
user system total real
screen-4.0.3/process.c 213.220000 0.260000 213.480000 (215.310007)
213.620s user, 0.280s system, 00:03:33.90 total
ruby 1.9.3p327 (2012-11-10 revision 37606) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1335.85s user 7.10s system 184% cpu 12:07.79
total
make -j 2 2> /dev/null 1336.54s user 7.17s system 184% cpu 12:07.80
total
make -j 2 2> /dev/null 1340.71s user 7.23s system 184% cpu 12:10.69
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1626.45s user 8.08s system 184% cpu 14:48.20
total
make -j 2 2> /dev/null 1633.40s user 8.10s system 185% cpu 14:46.92
total
make -j 2 2> /dev/null 1631.37s user 7.86s system 184% cpu 14:50.18
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.7.2
make -j 2 2> /dev/null 1531.83s user 7.85s system 184% cpu 13:53.04
total
make -j 2 2> /dev/null 1533.46s user 7.97s system 184% cpu 13:54.54
total
make -j 2 2> /dev/null 1532.89s user 8.03s system 184% cpu 13:53.33
total
== 備考
adlint_sma コマンドは、最初のソースコード読み込み時と最後の解析結果書き出し時に
IO が走る以外は、オンメモリで計算のみを実行しています。
データ構造は木構造が多く、再帰処理を多用し、小さな一時オブジェクトを多く new し
ています。
ruby 1.9.3p327 (2012-11-10 revision 37605)
user system total
real
screen-4.0.3/process.c.small 26.880000 0.100000 26.980000 (
27.002153)
27.470s user, 0.130s system, 00:00:27.59 total
trunk r34947
user system total
real
screen-4.0.3/process.c.small 27.500000 0.120000 27.620000 (
27.645960)
28.120s user, 0.180s system, 00:00:28.30 total
trunk r34948
user system total
real
screen-4.0.3/process.c.small 33.080000 0.190000 33.270000 (
33.382366)
33.730s user, 0.220s system, 00:00:33.94 total
trunk r37581
user system total
real
screen-4.0.3/process.c.small 25.910000 0.140000 26.050000 (
26.057930)
26.550s user, 0.190s system, 00:00:26.74 total
trunk r37582
user system total
real
screen-4.0.3/process.c.small 21.480000 0.130000 21.610000 (
21.608838)
22.090s user, 0.190s system, 00:00:22.28 total
trunk r37410
user system total
real
screen-4.0.3/process.c.small 33.690000 0.100000 33.790000 (
33.858404)
34.360s user, 0.140s system, 00:00:34.50 total
trunk r37410 with r37410-revert34948-partially.patch
user system total
real
screen-4.0.3/process.c.small 26.710000 0.120000 26.830000 (
26.879693)
27.390s user, 0.160s system, 00:00:27.55 total
trunk r37410 with r37410-adapted37582.patch
user system total
real
screen-4.0.3/process.c.small 26.830000 0.100000 26.930000 (
27.078610)
27.490s user, 0.140s system, 00:00:27.62 total
ruby 1.9.3p327 (2012-11-10 revision 37606) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1335.85s user 7.10s system 184% cpu 12:07.79
total
make -j 2 2> /dev/null 1336.54s user 7.17s system 184% cpu 12:07.80
total
make -j 2 2> /dev/null 1340.71s user 7.23s system 184% cpu 12:10.69
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1626.45s user 8.08s system 184% cpu 14:48.20
total
make -j 2 2> /dev/null 1633.40s user 8.10s system 185% cpu 14:46.92
total
make -j 2 2> /dev/null 1631.37s user 7.86s system 184% cpu 14:50.18
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.7.2
make -j 2 2> /dev/null 1531.83s user 7.85s system 184% cpu 13:53.04
total
make -j 2 2> /dev/null 1533.46s user 7.97s system 184% cpu 13:54.54
total
make -j 2 2> /dev/null 1532.89s user 8.03s system 184% cpu 13:53.33
total
== 備考
adlint_sma コマンドは、最初のソースコード読み込み時と最後の解析結果書き出し時に
IO が走る以外は、オンメモリで計算のみを実行しています。
データ構造は木構造が多く、再帰処理を多用し、小さな一時オブジェクトを多く new し
ています。
ruby 1.9.3p327 (2012-11-10 revision 37606) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1335.85s user 7.10s system 184% cpu 12:07.79
total
make -j 2 2> /dev/null 1336.54s user 7.17s system 184% cpu 12:07.80
total
make -j 2 2> /dev/null 1340.71s user 7.23s system 184% cpu 12:10.69
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1626.45s user 8.08s system 184% cpu 14:48.20
total
make -j 2 2> /dev/null 1633.40s user 8.10s system 185% cpu 14:46.92
total
make -j 2 2> /dev/null 1631.37s user 7.86s system 184% cpu 14:50.18
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.7.2
make -j 2 2> /dev/null 1531.83s user 7.85s system 184% cpu 13:53.04
total
make -j 2 2> /dev/null 1533.46s user 7.97s system 184% cpu 13:54.54
total
make -j 2 2> /dev/null 1532.89s user 8.03s system 184% cpu 13:53.33
total
== 備考
adlint_sma コマンドは、最初のソースコード読み込み時と最後の解析結果書き出し時に
IO が走る以外は、オンメモリで計算のみを実行しています。
データ構造は木構造が多く、再帰処理を多用し、小さな一時オブジェクトを多く new し
ています。
また、adlint_bm についても -c NUM で測定回数を指定可能にして
adlint-benchmark-1.1.0 としてリリースし、このバージョンを使用しました。
== 測定結果
=== “screen-4.0.3/process.c.small” ターゲット
測定コマンド : adlint_bm -p
ruby 1.9.3p327 (2012-11-10 revision 37606) [i686-linux]
user system total
real
screen-4.0.3/process.c.small #1 16.250000 0.050000 16.300000 (
16.434142)
total 16.250000 0.050000 16.300000 (
16.434142)
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] ← 2.0.0-preview1
user system total
real
screen-4.0.3/process.c.small #1 21.540000 0.080000 21.620000 (
21.800759)
total 21.540000 0.080000 21.620000 (
21.800759)
ruby 2.0.0dev (2012-11-29 trunk 37962) [i686-linux] ← trunk 最新
user system total
real
screen-4.0.3/process.c.small #1 15.220000 0.050000 15.270000 (
15.392969)
total 15.220000 0.050000 15.270000 (
15.392969)
=== “screen-4.0.3/process.c” ターゲット
測定コマンド : adlint_bm -t “screen-4.0.3/process.c” -p
ruby 1.9.3p327 (2012-11-10 revision 37606) [i686-linux]
user system total
real
screen-4.0.3/process.c #1 214.060000 0.470000 214.530000
(216.548791)
total 214.060000 0.470000 214.530000
(216.548791)
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] ← 2.0.0-preview1
user system total
real
screen-4.0.3/process.c #1 244.090000 0.520000 244.610000
(246.698421)
total 244.090000 0.520000 244.610000
(246.698421)
ruby 2.0.0dev (2012-11-29 trunk 37962) [i686-linux] ← trunk 最新
user system total
real
screen-4.0.3/process.c #1 227.260000 0.310000 227.570000
(229.420830)
total 227.260000 0.310000 227.570000
(229.420830)
== さらに測定
“screen-4.0.3/process.c” ターゲットについて、-c NUM オプションで測定を繰り返し
て見たところ、1.9.3 と 2.0.0 で動作特性が異なる傾向を持つことが分かりました。
ruby 1.9.3p327 (2012-11-10 revision 37606) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1335.85s user 7.10s system 184% cpu 12:07.79
total
make -j 2 2> /dev/null 1336.54s user 7.17s system 184% cpu 12:07.80
total
make -j 2 2> /dev/null 1340.71s user 7.23s system 184% cpu 12:10.69
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.5.1
make -j 2 2> /dev/null 1626.45s user 8.08s system 184% cpu 14:48.20
total
make -j 2 2> /dev/null 1633.40s user 8.10s system 185% cpu 14:46.92
total
make -j 2 2> /dev/null 1631.37s user 7.86s system 184% cpu 14:50.18
total
ruby 2.0.0dev (2012-11-01 trunk 37411) [i686-linux] built with
gcc-4.7.2
make -j 2 2> /dev/null 1531.83s user 7.85s system 184% cpu 13:53.04
total
make -j 2 2> /dev/null 1533.46s user 7.97s system 184% cpu 13:54.54
total
make -j 2 2> /dev/null 1532.89s user 8.03s system 184% cpu 13:53.33
total
== 備考
adlint_sma コマンドは、最初のソースコード読み込み時と最後の解析結果書き出し時に
IO が走る以外は、オンメモリで計算のみを実行しています。
データ構造は木構造が多く、再帰処理を多用し、小さな一時オブジェクトを多く new し
ています。
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.