RaspberryPiのパフォーマンスチェック

2013/9/30 月曜日 22:30:56

このエントリをはてなブックマークに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをdel.icio.usに追加このエントリをBuzzurl(バザール)に追加

とある方からRaspberryPiを頂きまして…。

特にこれといった電子工作のアイディアは浮かばないので、普通にデスクトップOSを動かした時にどのくらいパフォーマンスが出るのかチェックします。
RaspberryPiにGUIは厳しいかなと思いましたがXを起動してブラウザとか立ち上げても普通に表示できます(さすがに快適とは言えないレベルですが…)。

LinuxサーバーなどのCPU性能を測るのによく使われているらしい姫野ベンチマークを試します。

ソースコード(C, static allocate version)の問題サイズ「M」(256 x 128 x 128)の「cc_himenoBMTxp_m.lzh」を使用しています。

# ./bmt
mimax = 129 mjmax = 129 mkmax = 257
imax = 128 jmax = 128 kmax =256
Start rehearsal measurement process.
Measure the performance in 3 times.
MFLOPS: 24.232195 time(s): 16.973923 1.733593e-03

Now, start the actual measurement process.
The loop will be excuted in 10 times
This will take about one minute.
Wait for a while

Loop executed for 10 times
Gosa : 1.650675e-03
MFLOPS measured : 24.693260    cpu : 55.523304
Score based on Pentium III 600MHz : 0.301137

あと分かりやすい指標としてだいたいのブラウザでのJavaScript性能も気になるよねということで、sunspider 0.9.1と1.0.1も試します。

使用したブラウザはChromium 22.0.1229.94(Rasbian(Debian 7.1))です。

20130930_rasbian

[0.9.1]

============================================
RESULTS (means and 95% confidence intervals)
——————————————–
Total: 12110.4ms +/- 19.1%
——————————————–

3d: 2315.5ms +/- 19.3%
cube: 640.1ms +/- 24.6%
morph: 621.8ms +/- 14.4%
raytrace: 1053.6ms +/- 19.4%

access: 1215.9ms +/- 14.3%
binary-trees: 88.4ms +/- 34.2%
fannkuch: 393.4ms +/- 16.8%
nbody: 583.5ms +/- 8.2%
nsieve: 150.6ms +/- 24.5%

bitops: 972.7ms +/- 11.3%
3bit-bits-in-byte: 127.1ms +/- 20.8%
bits-in-byte: 176.5ms +/- 19.0%
bitwise-and: 219.2ms +/- 3.8%
nsieve-bits: 449.9ms +/- 10.2%

controlflow: 103.5ms +/- 17.6%
recursive: 103.5ms +/- 17.6%

crypto: 754.1ms +/- 20.7%
aes: 299.9ms +/- 21.9%
md5: 226.4ms +/- 18.7%
sha1: 227.8ms +/- 21.6%

date: 1313.7ms +/- 21.2%
format-tofte: 577.8ms +/- 20.5%
format-xparb: 735.9ms +/- 21.7%

math: 1509.3ms +/- 21.4%
cordic: 478.1ms +/- 20.0%
partial-sums: 776.4ms +/- 21.7%
spectral-norm: 254.8ms +/- 24.5%

regexp: 208.4ms +/- 20.5%
dna: 208.4ms +/- 20.5%

string: 3717.3ms +/- 20.8%
base64: 200.8ms +/- 19.4%
fasta: 521.9ms +/- 20.6%
tagcloud: 1052.9ms +/- 20.9%
unpack-code: 1243.6ms +/- 22.6%
validate-input: 698.1ms +/- 19.9%

[1.0.1]

============================================
RESULTS (means and 95% confidence intervals)
——————————————–
Total: 11176.7ms +/- 0.5%
——————————————–

3d: 2272.9ms +/- 1.2%
cube: 706.4ms +/- 1.4%
morph: 568.2ms +/- 5.2%
raytrace: 998.3ms +/- 1.1%

access: 1115.7ms +/- 1.8%
binary-trees: 66.5ms +/- 3.0%
fannkuch: 361.5ms +/- 1.2%
nbody: 561.5ms +/- 3.2%
nsieve: 126.2ms +/- 1.6%

bitops: 962.4ms +/- 2.7%
3bit-bits-in-byte: 115.2ms +/- 0.9%
bits-in-byte: 155.1ms +/- 2.0%
bitwise-and: 210.2ms +/- 0.7%
nsieve-bits: 481.9ms +/- 5.0%

controlflow: 85.9ms +/- 1.9%
recursive: 85.9ms +/- 1.9%

crypto: 670.9ms +/- 0.9%
aes: 269.4ms +/- 2.6%
md5: 204.5ms +/- 1.9%
sha1: 197.0ms +/- 1.8%

date: 1238.9ms +/- 1.5%
format-tofte: 532.4ms +/- 1.6%
format-xparb: 706.5ms +/- 1.8%

math: 1446.9ms +/- 1.5%
cordic: 541.5ms +/- 3.0%
partial-sums: 688.6ms +/- 3.6%
spectral-norm: 216.8ms +/- 7.1%

regexp: 197.5ms +/- 0.7%
dna: 197.5ms +/- 0.7%

string: 3185.6ms +/- 0.8%
base64: 211.4ms +/- 7.9%
fasta: 579.8ms +/- 3.5%
tagcloud: 928.1ms +/- 1.3%
unpack-code: 1166.6ms +/- 1.5%
validate-input: 299.7ms +/- 3.3%

sunspiderのベンチ結果に関してはブラウザの実装によっても大きく変わりそうですが、iPhone 3Gとほぼ同じCPU(ARM1176JZF-S)を積んでいて、なおかつiPhone 3Gと同クラスの実行時間であることを考えるとまあ妥当な感じですね。

今のスマートフォンと比較するとさすがに大きく負けてしまいますし、予想通り一昔前のスマートフォン程度の性能ぐらいだと思います。

sunspiderだけだとなにか物足りないのでついでにMozillaのKraken1.1も試してみます。

===============================================
RESULTS (means and 95% confidence intervals)
———————————————–
Total: 504423.6ms +/- 2.0%
———————————————–

ai: 41958.5ms +/- 8.6%
astar: 41958.5ms +/- 8.6%

audio: 155643.2ms +/- 4.0%
beat-detection: 39156.3ms +/- 6.2%
dft: 41030.9ms +/- 11.2%
fft: 34891.2ms +/- 3.7%
oscillator: 40564.8ms +/- 6.1%

imaging: 236394.9ms +/- 3.7%
gaussian-blur: 138277.3ms +/- 7.3%
darkroom: 47791.8ms +/- 1.7%
desaturate: 50325.8ms +/- 4.6%

json: 6270.0ms +/- 8.9%
parse-financial: 3007.3ms +/- 3.9%
stringify-tinderbox: 3262.7ms +/- 15.7%

stanford: 64157.0ms +/- 5.4%
crypto-aes: 17023.2ms +/- 18.7%
crypto-ccm: 11134.6ms +/- 3.3%
crypto-pbkdf2: 26760.5ms +/- 1.7%
crypto-sha256-iterative: 9238.7ms +/- 1.8%

さすがに遅い。

あと、最近流行っている(た)CookieClickerをRaspberry Piの上で動かしたらネタになるかなーと思ったりして試してみたら、実際動かすと派手なグラフィックをオプションで全部切ってもカクカクしていて話にならない重さでした。

まあしかし、そもそもRaspberry PiにJavaScript性能を求めても仕方がない感じはしますが。

やはりRaspberry PiのメリットはミニPCとしてもマイコン(GPIOがついている)としても使えるという点ですし。

あと、USB5Vで動くというのは大きいです。電源周りを自作することもできそうですし。
とはいえアイディアがないので活用どころは悩み中です。

タグ: ARM, CPU, Linux, Raspberry Pi, SunSpider, サーバー, スマートフォン, ブラウザ, ベンチマーク, 電子工作

関連記事


コメントを残す

コメントは基本的に即時反映されますが、スパム判定された場合、管理人の承認までの時間がかかる場合もあります。
ブログやホームページ等に引用する際はソースURLとして、この記事のURLを提示してください。
引用の際の注意
記事の引用時、該当URLが提示されておらず、悪質な転載だと考えられる場合、無断転載と判断させていただき、サーバー管理者への問い合わせや法的処置を取らせていただく場合もございます。
要約や語句などが加えられていたとしても、内容が同一であれば著作権法は適用されます。