- Speed!
- Photo by Stefano Ravalli
気が付けば、手元に Raspberry Pi の各種モデルが色々揃ってしまったので、UnixBench でベンチマークを取った結果をまとめてみました。また、同時に、ヒートシンクなどの熱対策を変えつつ、ベンチマーク直後のコア温度も調べてみました。
ベンチマーク対象のモデルは次の通りです。
- Raspberry Pi 1 Model B+ V1.2
- Raspberry Pi 2 Model B V1.1
- Raspberry Pi 3 Model B V1.2
- Raspberry Pi Zero V1.3
以前、B+ と 2B については、OS やアプリケーションの起動時間を比較したことがありますが、今回は UnixBench という、Unix 系 OS で定番となっているベンチマーク ツールを使って、主に CPU パワーを計測してみました。全力で CPU をブン回して、どれくらい早く計算できるかってことです。
また、eBay で購入した格安アルミ製ヒートシンク*1の有無、空冷ファン(5V/35mm角)の有無を変えて、ベンチマークを実行した直後のコア温度も計測しています。
まとめ、のようなモノ
- ベンチマークの実行終了直後のコア温度を計測していますが、CPU をフルパワーで長時間振り回すという特殊な状況です。実際のアプリケーションではそこまでコア温度が上昇することはないと思いますが、まぁ最悪、これくらいまで温度が上昇しますという目安程度に参照ください。
- Zero と B+ は、どちらも同じ Broadcom BCM2835 を搭載しており、性能的にもほぼ同じスコアを出しています。接続する機器に対応して、ペリフェラルに拠る選択はあると思いますが、大よそ Zero を選ぶことになりそうです。WiFi と Bluetooth が搭載された Zero W も発表されたばかりですし。
- マルチコアで比較すると、Model 1 と 2B で 4.2倍、2B と 3B で 1.4倍の性能差。今後は、目的に合わせて Zero か 3B か選択し、2B は不憫な子、という選択になると思います。
- Zero と B+ を大人しく使う分には、ヒートシンク無しの運用でも発熱は大丈夫そうですが、気温 40℃ の真夏に熱対策なしで振り回すとギリギリかもしれません。
- 2B と 3B では熱対策が重要になってきます。特に無対策の 3B は、冬の室温でも 80℃近く、真夏であれば 100℃を超えそうな勢いです。
- (格安のアルミ製が理由かもしれないが)ヒートシンク単体では、それほど大きな温度低下は見られませんでした。2B では
ヒートシンクの有無による冷却効果はほとんど無いように見える一方、3B では 10℃近く温度が下がっています。
- 空冷ファンの冷却効果は相当に高く、ヒートシンクを装着せずに CPU 表面に送風するだけでも十分に効果があります。
- 冷却効果は、空冷ファン+ヒートシンク>ファン単体>(越えられない壁)>ヒートシンク単体≧裸運用、ということが判ります。
- 空冷ファンはともかく、ヒートシンクだけでも付けておけば大丈夫だろう、と甘く考えていた部分があり、ヒートシンク単体でほとんど冷却できなかった点は正直ショックです。
150514_2B_HSv.log
の計測では、放熱で生まれたヒートシンクのフィン周りの上昇気流を狙って、冷却効果を少しでも高められないかと本体を縦置きしてみましたが、効果はありませんでした。
- ヒートシンクには熱伝導率の高いモノが良く、今回、アルミニウム製の格安ヒートシンクでしたが、銅製のモノであれば、スペック上(熱伝導率)の冷却効率はほぼ 2 倍になります。3B では、ケチらずに銅製のヒートシンクを付けてあげるのが良さそうです。
- 3B から、電源容量の要求が、2B の最大 1.8A から最大 2.5A へと大幅に増えました。実際、今回の計測でも、以前から使っていた細目の USB ケーブルで給電しながらベンチマークを回すと、ベンチマーク中に画面の右上に頻繁に電圧低下警告が表示されるようになりました(
170204_3B_11C.log
)。そこで、これを、2A 充電対応をうたう USB ケーブルに変えたところ、電圧低下警告も表示されなくなり、ベンチマークのスコアも上昇しています(170204_3B_2A_10C.log
)。3B の性能を完全に引き出すには、大電流を安定して供給できる電源周りの整備が必須です。
環境
$ uname -a
Linux raspberrypi 4.4.38-v7+ #938 SMP Thu Dec 15 15:22:21 GMT 2016 armv7l GNU/Linux
$ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
NAME="Raspbian GNU/Linux"
VERSION_ID="8"
VERSION="8 (jessie)"
ID=raspbian
ID_LIKE=debian
...
$ cat ~/src/UnixBench/README
Version 5.1.3 -- 2011-01-13
...
メモ:CPU 動作周波数の設定
$ sudo apt-get install cpufrequtils
$ sudo cpufreq-set -g performance
$ cpufreq-info
参考リンク