俺のラズパイ2がこんなに遅いわけがない
Scalewayとの比較にあたり、同じARMということでRaspberry Pi 2 Model Bとベンチマーク。
俺のラズパイ2でUnixBenchを実行すると、自分が計測したスコアと、他のサイトに載ってるスコアが違う。
こちらのスコアは、1並列で約120、4並列で約300。 Link
他のサイトのスコアは、1並列で約170、4並列で約440。
誤差の範囲ではなさそうということで調べてみたときの流れ。
1) OSの差を確認
UnixBenchはOSによってもスコアが変わってきます。
可能ならOSもバージョンも揃えたい。
他のサイトを見ると、具体的に何のOS使ってるか明示されてなかったりもするけど
UnixBenchの結果に載ってる情報だと、Linuxカーネルのバージョンは
3.18.6-v7+
3.18.7-v7+
3.18.8-v7+
とあり、Raspbian 7 (wheezy)あたりでしょう。
エントリの日時見ても8 (jessie)ではなさそう。
ちなみにこちらは、
pi@raspberrypi ~ $ cat /etc/os-release PRETTY_NAME="Raspbian GNU/Linux 7 (wheezy)" NAME="Raspbian GNU/Linux" VERSION_ID="7" VERSION="7 (wheezy)" ID=raspbian ID_LIKE=debian ANSI_COLOR="1;31" HOME_URL="http://www.raspbian.org/" SUPPORT_URL="http://www.raspbian.org/RaspbianForums" BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs" pi@raspberrypi ~ $ uname -a Linux raspberrypi 3.18.11-v7+ #781 SMP PREEMPT Tue Apr 21 18:07:59 BST 2015 armv7l GNU/Linux
Raspbian7の3.18.11-v7+、
メンテナンスバージョンが多少違いますが、このくらいであればスコアには影響でなさそう。
次へ。
2) オーバークロック/クロックダウンを確認
Raspberry Piでは、CPUの動作クロックを変更することができます。
知らず知らずのウチに定格から落としていたのなと。
次のように変更できます。
pi@raspberrypi ~ $ sudo raspi-config
でコンフィグを開き、
「7 Overclock」
を選択し、定格の
「Medium 900MHz ARM, 250MHz core, 450MHz SDRAM, 2 overvolt」
を選択し、再起動。
結果、遅いまま変わらず。
クロックアップ
「Pi2 1000MHz ARM, 500MHz core, 500MHz SDRAM, 2 overvolt」
して実行、それでもスコアは遅いまま変わらず。
クロックが影響しないとなるとアレですね。
3) 電源不足を確認
クロック変えてもスコアが変わらないとなると電源の問題だなあと。
USB電流&電圧チェッカー使って確認。
問題なさそう。
給電には、Owltech OWL-ACUS4を使ってましたが、
故障を疑ってGen Andru USB Chargerに変更。
それでも結果変わらず。
4) ラズパイの故障を確認
これはもうRaspberry Pi自体が故障しているのではないかと。
久しぶりに起動してるし、結構初期の頃に買ったものだし。
なので、もう1枚買ってきた。
・・・結果変わらず。
5) OSの中身の問題
ハードウェア周りが問題ないとなるとOSの中の方の問題というわけで。
まずは、動作クロックを疑ってみた。
pi@raspberrypi ~ $ lscpu Architecture: armv7l Byte Order: Little Endian CPU(s): 4 On-line CPU(s) list: 0-3 Thread(s) per core: 1 Core(s) per socket: 4 Socket(s): 1 pi@raspberrypi ~ $ cat /proc/cpuinfo processor : 0 model name : ARMv7 Processor rev 5 (v7l) BogoMIPS : 57.60 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc07 CPU revision : 5 processor : 1 model name : ARMv7 Processor rev 5 (v7l) BogoMIPS : 57.60 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc07 CPU revision : 5 processor : 2 model name : ARMv7 Processor rev 5 (v7l) BogoMIPS : 57.60 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc07 CPU revision : 5 processor : 3 model name : ARMv7 Processor rev 5 (v7l) BogoMIPS : 57.60 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc07 CPU revision : 5 Hardware : BCM2709 Revision : a01041 Serial : 00000000ae0b8681
クロックは出てこないようなので別方法で。
pi@raspberrypi ~ $ sudo cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
600000
なんと600 MHz!定格は900 MHzのはず。
つまり、CPUの省電力機能が動いているわけで。
pi@raspberrypi ~ $ sudo cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor powersave pi@raspberrypi ~ $ sudo cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors conservative ondemand userspace powersave performance
やっぱり、powersaveになってる。performanceに変えてやろう。
pi@raspberrypi ~ $ sudo apt-get install cpufrequtils -y pi@raspberrypi ~ $ sudo cpufreq-set -g performance pi@raspberrypi ~ $ cpufreq-info
cpufreq-infoで、current policyがperformanceになっていて、
current CPU frequencyが900 MHzになっていれば成功。
この状態で実行。
本来のスコアが出たよ! Link
知らなかった、Raspberry Pi 2のCPUからは、クロック可変だったの。
ARMとARM Linuxも進んでますねー。