Orange Pi One にファンを付けてみました。
Orange Pi PC と比較すると一回り小さいです。
ファンを付ける前にCPU の刻印をキャプチャーしておきます。G1035BA 61A3 とあります。FAN を付けないと負荷時80度を超えますので、1GHz 以内にしないとファンは必須です。
このコイルがじゃまなのでヒートシンクを切り落とします。
こんな感じ。
ファンとヒートシンクは適当なネジをヒートシンクに間にねじ込みます。
付けたかんじ。常時回しっぱなしにしておくので裏面の電源部から半田づけして直接5V をとりました。GPIO から温度を見て回すっていうのもありですが、1つプロセスを消費するし、GPIO からの配線が面倒だったので。回しっぱなしでも、0.3W 程度なので月約5円です。
温度は、ベンチマーク中でも室温24度で、60度くらいまでしかあがりません。なかなか冷えているようです。ちなみに、平常時は、45度くらいになっています。
ベンチマーク中のCPU 温度
ベンチマーク中の室温
lobo kernel にて以下のようになりました。
======================================================================== BYTE UNIX Benchmarks (Version 5.1.3) System: OrangePi: GNU/Linux OS: GNU/Linux -- 3.4.39-01-lobo -- #1 SMP PREEMPT Sun Oct 25 14:46:41 CET 2015 Machine: armv7l (armv7l) Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8") 20:13:59 up 8 min, 2 users, load average: 0.70, 0.77, 0.44; runlevel 3 ------------------------------------------------------------------------ Benchmark Run: Sun Feb 14 2016 20:13:59 - 20:43:47 0 CPUs in system; running 4 parallel copies of tests Dhrystone 2 using register variables 15869153.7 lps (10.0 s, 7 samples) Double-Precision Whetstone 2987.1 MWIPS (9.9 s, 7 samples) Execl Throughput 1479.8 lps (29.4 s, 2 samples) File Copy 1024 bufsize 2000 maxblocks 150225.4 KBps (30.0 s, 2 samples) File Copy 256 bufsize 500 maxblocks 40862.0 KBps (30.0 s, 2 samples) File Copy 4096 bufsize 8000 maxblocks 395921.5 KBps (30.0 s, 2 samples) Pipe Throughput 944200.7 lps (10.0 s, 7 samples) Pipe-based Context Switching 84816.2 lps (10.0 s, 7 samples) Process Creation 3927.2 lps (30.0 s, 2 samples) Shell Scripts (1 concurrent) 1942.7 lpm (60.1 s, 2 samples) Shell Scripts (8 concurrent) 261.9 lpm (60.3 s, 2 samples) System Call Overhead 2197538.2 lps (10.0 s, 7 samples) System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 15869153.7 1359.8 Double-Precision Whetstone 55.0 2987.1 543.1 Execl Throughput 43.0 1479.8 344.1 File Copy 1024 bufsize 2000 maxblocks 3960.0 150225.4 379.4 File Copy 256 bufsize 500 maxblocks 1655.0 40862.0 246.9 File Copy 4096 bufsize 8000 maxblocks 5800.0 395921.5 682.6 Pipe Throughput 12440.0 944200.7 759.0 Pipe-based Context Switching 4000.0 84816.2 212.0 Process Creation 126.0 3927.2 311.7 Shell Scripts (1 concurrent) 42.4 1942.7 458.2 Shell Scripts (8 concurrent) 6.0 261.9 436.5 System Call Overhead 15000.0 2197538.2 1465.0 ======== System Benchmarks Index Score 499.1
CPUは、以下のように見えています。
# cat /proc/cpuinfo Processor : ARMv7 Processor rev 5 (v7l) processor : 0 BogoMIPS : 4800.00 processor : 1 BogoMIPS : 4800.00 processor : 2 BogoMIPS : 4800.00 processor : 3 BogoMIPS : 4800.00 Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc07 CPU revision : 5 Hardware : sun8i Revision : 0000 Serial : 64005035410c1027084e
メモリーは、512MB
# cat /proc/meminfo MemTotal: 507372 kB MemFree: 219756 kB Buffers: 1852 kB Cached: 34468 kB SwapCached: 0 kB Active: 216236 kB Inactive: 17940 kB Active(anon): 198284 kB Inactive(anon): 836 kB Active(file): 17952 kB Inactive(file): 17104 kB Unevictable: 0 kB Mlocked: 0 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 507372 kB LowFree: 219756 kB SwapTotal: 0 kB SwapFree: 0 kB Dirty: 996 kB Writeback: 0 kB AnonPages: 197840 kB Mapped: 12744 kB Shmem: 1264 kB Slab: 21524 kB SReclaimable: 8720 kB SUnreclaim: 12804 kB KernelStack: 1296 kB PageTables: 3632 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 253684 kB Committed_AS: 1065072 kB VmallocTotal: 499712 kB VmallocUsed: 17300 kB VmallocChunk: 213772 kB
nginx と php-fpm と mariadb を動作している状態で計測。
# ps axu | egrep '[n]ginx|[p]hp|[m]aria' root 539 0.0 0.8 37836 4516 ? Ss 20:06 0:00 php-fpm: master process (/etc/php-fpm.conf) nginx 657 0.0 2.9 57212 15056 ? S 20:06 0:03 php-fpm: pool www nginx 658 0.0 2.3 54172 12084 ? S 20:06 0:03 php-fpm: pool www nginx 659 0.0 0.6 37836 3432 ? S 20:06 0:00 php-fpm: pool www nginx 660 0.0 3.0 57188 15372 ? S 20:06 0:02 php-fpm: pool www nginx 661 0.0 1.2 48140 6104 ? S 20:06 0:02 php-fpm: pool www mysql 870 0.1 12.3 629000 62764 ? Sl 20:06 0:12 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --log-error=/var/log/mariadb/mariadb.log --pid-file=/var/run/mariadb/mariadb.pid --socket=/var/lib/mysql/mysql.sock root 972 0.0 0.4 32032 2092 ? Ss 20:06 0:00 nginx: master process /usr/sbin/nginx nginx 974 0.0 0.5 32036 2816 ? S 20:06 0:01 nginx: worker process nginx 975 0.0 0.5 32036 2700 ? S 20:06 0:01 nginx: worker process nginx 976 0.0 0.5 32036 2912 ? S 20:06 0:01 nginx: worker process nginx 977 0.0 0.5 32036 2768 ? S 20:06 0:01 nginx: worker process nginx 1491 0.0 2.3 54228 12144 ? S 20:06 0:02 php-fpm: pool www nginx 2009 0.0 3.0 47920 15224 ? S 20:07 0:02 php-fpm: pool www
GPIO も WirelingOP が以下のように使えます。
# gpio readall +-----+-----+----------+------+---+--OrangePiPC--+---+------+---------+-----+--+ | BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM | +-----+-----+----------+------+---+----++----+---+------+----------+-----+-----+ | | | 3.3v | | | 1 || 2 | | | 5v | | | | 2 | -1 | SDA.0 | | | 3 || 4 | | | 5V | | | | 3 | -1 | SCL.0 | | | 5 || 6 | | | 0v | | | | 4 | 6 | IO6 PA06 | OUT | 0 | 7 || 8 | | | TxD3 | | | | | | 0v | | | 9 || 10 | | | RxD3 | | | | 17 | -1 | RxD2 | | | 11 || 12 | 0 | OUT | IO1 PD14 | 1 | 18 | | 27 | -1 | TxD2 | | | 13 || 14 | | | 0v | | | | 22 | -1 | CTS2 | | | 15 || 16 | 0 | OUT | IO4 PC04 | 4 | 23 | | | | 3.3v | | | 17 || 18 | 0 | OUT | IO5 PC07 | 5 | 24 | | 10 | -1 | MOSI | | | 19 || 20 | | | 0v | | | | 9 | -1 | MISO | | | 21 || 22 | | | RTS2 | | | | 11 | -1 | SCLK | | | 23 || 24 | | | SPI-CE0 | | | | | | 0v | | | 25 || 26 | | | CE1 | | | | 0 | -1 | SDA.1 | | | 27 || 28 | | | SCL.1 | | | | 5 | 7 | IO7 PA7 | OUT | 0 | 29 || 30 | | | 0v | | | | 6 | 8 | IO8 PA8 | OUT | 0 | 31 || 32 | 0 | OUT | IO9 PG08 | 9 | 12 | | 13 | 10 | IO10 PA9 | OUT | 0 | 33 || 34 | | | 0v | | | | 19 | 12 | IO12PA10 | OUT | 0 | 35 || 36 | 0 | OUT | IO13PG09 | 13 | 16 | | 26 | 14 | IO14PA20 | ALT3 | 0 | 37 || 38 | 0 | OUT | IO15PG06 | 15 | 20 | | | | 0v | | | 39 || 40 | 0 | OUT | IO16PG07 | 16 | 21 | +-----+-----+----------+------+---+----++----+---+------+----------+-----+-----+ | BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM | +-----+-----+----------+------+---+--OrangePIPC--+------+----------+-----+-----+
これが、1600円(送料込み)で買えるとはいい時代になりました。さて、これでOrange Pi が2台になったのでいろいろと遊べそうです。とりあえず、ケース作りを考えないとですね。
osx から X2Go した図
メモリは、512MB と少ないですがCPU パワーがあるのでメモリの範囲内なら、GUI もそれなりに動きます。
CPU クロックは、1.2MHz に設定したほうがよさそうです。正常に周波数がとれていないようなので。ぼちぼちやっていきます。
Orange Pi PC の設定で1.6G の設定をしていても、1.2GHz までのようです。
負荷時のCPU クロックの状態
# cpupower frequency-info analyzing CPU 0: driver: cpufreq-sunxi CPUs which run at the same hardware frequency: 0 1 2 3 CPUs which need to have their frequency coordinated by software: 0 1 2 3 maximum transition latency: 2.00 ms. hardware limits: 480 MHz - 1.54 GHz available cpufreq governors: conservative, ondemand, userspace, powersave, interactive, performance current policy: frequency should be within 480 MHz and 1.54 GHz. The governor "interactive" may decide which speed to use within this range. current CPU frequency is 1.20 GHz (asserted by call to hardware). cpufreq stats: 60.0 MHz:0.00%, 120 MHz:0.00%, 240 MHz:0.00%, 312 MHz:0.00%, 408 MHz:0.00%, 480 MHz:0.00%, 504 MHz:0.00%, 600 MHz:0.00%, 648 MHz:0.00%, 720 MHz:0.00%, 816 MHz:0.00%, 912 MHz:0.00%, 1.01 GHz:0.00%, 1.10 GHz:0.00%, 1.20 GHz:100.00%, 1.34 GHz:0.00%, 1.44 GHz:0.00%, 1.54 GHz:0.00%
▼まとめ
・OrangePi PC 用の Fedora22 でそのままブートした
・CPUクロックは、上限1.2GHz
・ぶん回すなら、ファンは必須
・UnixBench は総合スコア 500程度(OrangePi PC を1.2GHz 駆動したときと同等)
・OrangePi PC との価格差は、600円程度
・Linux を使った組み込みで具体的に何ができるか、どんな用途があるかはまだこれから模索
ピンバック: Soracom で IoT はじめました – junkhack