[Raspberry Pi] ベンチマーク

BeagleBoard-xMで行っていたようなカメラを使用した画像認識などもRaspberry Piで行ってみたいと考えており、CPU性能がどのぐらいなのか、興味があります。
そこで、ベンチマークでBeagleBoard-xMとの比較を行ってみました。

また、Raspberry Piはクロックアップも行えるので、クロックアップした状態での比較も行いました。
ベンチマークにはUnixBench5.1.3を使用しました。
以下のようにインストールします。

$ wget http://byte-unixbench.googlecode.com/files/UnixBench5.1.3.tgz
$ tar zxvf UnixBench5.1.3.tgz
$ cd UnixBench
$ make

以下のように実行します。

$ ./Run

Raspberry PiのCPUクロックはデフォルトの700MHzと、クロックアップした900MHzでベンチマークをとりました。
なお、1GHzまでクロックアップできますが、設定時にSDカードで不具合が出る場合があるような警告が出るため、900MHzとしました。
クロックアップはraspi-configコマンドを使用します。

# raspi-config

overclockを選択し、900MHzを指定します。
クロックアップした場合でもCPU温度が一定値を超えた場合、およびCPU負荷が下がった場合は700MHzに落ちるようです。
なお、CPU温度は以下で確認できます。

# cat /sys/class/thermal/thermal_zone0/temp

単位は1/1000℃です。
また、CPUクロックは以下で確認できます。

# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq

以下、UnixBenchの結果(抜粋)です。
Raspberry Pi 700MHz(デフォルト) 2013-02-09-wheezy-raspbian

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    1681552.8    144.1
Double-Precision Whetstone                       55.0        270.3     49.1
Execl Throughput                                 43.0        261.3     60.8
File Copy 1024 bufsize 2000 maxblocks          3960.0      45250.3    114.3
File Copy 256 bufsize 500 maxblocks            1655.0      14560.9     88.0
File Copy 4096 bufsize 8000 maxblocks          5800.0     104752.5    180.6
Pipe Throughput                               12440.0     176374.7    141.8
Pipe-based Context Switching                   4000.0      23680.7     59.2
Process Creation                                126.0        837.7     66.5
Shell Scripts (1 concurrent)                     42.4        475.9    112.2
Shell Scripts (8 concurrent)                      6.0         60.8    101.3
System Call Overhead                          15000.0     400417.2    266.9
========
System Benchmarks Index Score                                         102.4

Raspberry Pi 900MHz 2013-02-09-wheezy-raspbian

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    2140332.0    183.4
Double-Precision Whetstone                       55.0        347.9     63.3
Execl Throughput                                 43.0        285.9     66.5
File Copy 1024 bufsize 2000 maxblocks          3960.0      49983.8    126.2
File Copy 256 bufsize 500 maxblocks            1655.0      16647.5    100.6
File Copy 4096 bufsize 8000 maxblocks          5800.0     114334.3    197.1
Pipe Throughput                               12440.0     234711.6    188.7
Pipe-based Context Switching                   4000.0      27882.6     69.7
Process Creation                                126.0        924.8     73.4
Shell Scripts (1 concurrent)                     42.4        533.3    125.8
Shell Scripts (8 concurrent)                      6.0         68.1    113.5
System Call Overhead                          15000.0     488101.3    325.4
========
System Benchmarks Index Score                                         119.7

BeagleBoard-xM Ubuntu12.04

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    2805862.5    240.4
Double-Precision Whetstone                       55.0        170.8     31.0
Execl Throughput                                 43.0        393.8     91.6
File Copy 1024 bufsize 2000 maxblocks          3960.0      73164.4    184.8
File Copy 256 bufsize 500 maxblocks            1655.0      22681.5    137.0
File Copy 4096 bufsize 8000 maxblocks          5800.0     167140.9    288.2
Pipe Throughput                               12440.0     203844.9    163.9
Pipe-based Context Switching                   4000.0      21677.1     54.2
Process Creation                                126.0       1545.3    122.6
Shell Scripts (1 concurrent)                     42.4        782.4    184.5
Shell Scripts (8 concurrent)                      6.0        100.3    167.1
System Call Overhead                          15000.0     381276.1    254.2
========
System Benchmarks Index Score                                         136.7

今回はCPU速度の比較が目的なので、Dhrystone(整数演算)とWhetstone(不動小数点演算)のINDEX値で比較します。

  RasPi(700MHz) RasPi(900MHz) BeagleBoard-xM
Dhrystone 144.1 183.4 240.4
Whetstone 49.1 63.3 31.0

Raspberry Piのクロックアップに関しては700MHz⇒900MHzで1.28倍となりますが、Dhrystone、Whetstoneともに同程度に向上しており、クロックアップの効果がそのまま表れていると言えます。
次に、BeagleBoard-xMとの比較です。
なお、BeagleBoard-xM+Ubuntu12.04ではクロックは最高800MHzまでで制限されているようです。
整数演算速度を調べるDhrystoneに関してはRaspberry Piの900MHzと比較しても3割程度BeagleBoard-xMが速く、これがRaspberry PiのARMv6とBeagleBoard-xMのARM Cortex-A8のアーキテクチャの違いということなのだと思います。
一方、不動小数点演算速度を調べるWhetstoneではRaspberry Piの900MHzと比較すると、逆にRaspberry Piが倍以上速いということになっています。Raspberry Pi+2013-02-09-wheezy-raspbian、BeagleBoard-xM+Ubuntu12.04ともにarmhf、つまり、CPUが持つHardware Float機能を活かすようになっており、条件は同じはずなのですが。。。
あまりにも差が大きいので、このベンチマークでBeagleBoard-xM+Ubuntu12.04ではHardware Float機能がうまく動いていなく、Software Float(?)になっている可能性もあると思います。最新のOS (Ubuntu12.10)では状況が異なるかもしれません。今後機会があれば試してみたいと思います。
不動小数点演算速度でのBeagleBoard-xMとの比較ではすっきりしませんでしたが、整数演算に関しては(高価な)BeagleBoard-xMの方が速いという結論で良いと思います。ま~結局は用途次第でしょうが。
また、ベンチマーク実行中、Raspberry PiのCPU温度は
700MHz : 無負荷で42℃、ベンチマーク実行中で45℃
900MHz : 無負荷(700MHzに下がっている)で42℃、ベンチマーク実行中で47℃
でした。室温は22℃です。
900MHzにクロックアップしてもCPU温度はあまり上がりませんね。(夏場はどうなるかわかりませんが。)
ということで、900MHzで常用したいと思います。今後の記事でも特に断りがなければ900MHzで動かしているとお考えください。
次回はUSBカメラのテストを行ってみます。

[amazonjs asin=”B00TBKFAI2″ locale=”JP” title=”Raspberry Pi2 Model B ボード&ケースセット (Standard, Clear)”]
[amazonjs asin=”B00TLGADDS” locale=”JP” title=”Raspberry Piスターターパック (Pi2 用Standard)”]
[amazonjs asin=”4800710901″ locale=”JP” title=”これ1冊でできる!ラズベリー・パイ 超入門 改訂第2版 Raspberry Pi Model B/B+/2対応”]


本格派対局将棋 ぴよ将棋
本格派対局将棋アプリ ぴよ将棋
[Android] [iOS]

かわいい「ひよこ」と対局する将棋アプリ。かわいいけどAIは本格派!
対局後の検討機能や棋譜管理機能も充実!棋譜解析機能も搭載!

「[Raspberry Pi] ベンチマーク」への2件のフィードバック

  1. はじめまして。
    同ベンチマークを1GHz設定のRaspberryPiで行ったところ、IndexScoreがBeagleBoardを上回る149になりました。
    整数演算では追いつけていないのですが、オーバークロック次第でどうとでもなりそうです。

  2. 情報ありがとうございます。
    149ですと、私の計測したRaspberry Pi 900MHzに比べてクロック比以上にスコアが高いですね。
    私の使っているSDカードはClass6なので、IndexScoreが低めに出ていることが考えられます。
    BeagleBoardとの比較では、少なくともクロックアップした状態ではほぼ同じぐらいと言えそうですね。

コメントを残す

メールアドレスが公開されることはありません。