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 を使った組み込みで具体的に何ができるか、どんな用途があるかはまだこれから模索