最近の Arm の SOC ってとっても速いんですねぇ……
な覚書です.
ことの起こりは……
実は,少し前に Y’s のいうメーカーの EP300 って言うセキュリティアプライアンス(の抜け殻)を手に入れました.
これ,なかなか面白い代物で,要するにネットワーク機器な見た目の PC です.スペックの大枠は,
- Atom [email protected]@TDP5W
- 4Gbyte DDR3 SO-DIMM
- SSD 60G
- 4 port Gigabit Ethernet (intel チップ)
- 低消費電力!
で中は Windows embedded 8.1 に,Quick Health Technology という会社の seqrite と言う EPS(Endpoint Security System) 製品がインストールされていました.
なお,Windows embedded 8.1 って,フルスペックの Windows 8.1 に embedded なソフトウェアを追加したものだそう .その上に sqrite が Apache とかとセットでインストールされているという小規模な事務所とかだとこれで良いんだろうなぁ……って言う構成でした.
まぁ,ソフトの部分ともかくとして,ハードウェアの作りはシッカリしていて,さらに,
- ファンレス!
- 小さい!
- ゼロスピンドル!
- 4 port Gigabit Ethernet で全ポートインテル入ってる!
- PC なので何にでもなりそう!
となかなか魅力的な製品な訳なんですが,使ってみると……
妙に遅い……(遅すぎるぞぉ)
んです.Windows 8.1 と seqrite の組み合わせが重いのかなぁ……と当初は思っていたんですが,実はそうではありませんでした.
Atom E3825 ベンチマーク
もともと Windows 8.1 と seqrite を使うつもりは無かったので,サクっと消して,debian を入れてみたところ,やっぱり遅い.
メモリは十分だし SSD だし変だなぁ……と思い,試しに UnixBench を実行してみると,結果は,
うん.遅い.
実際の結果は以下の通り.
======================================================================== BYTE UNIX Benchmarks (Version 5.1.3) System: vhub4: GNU/Linux OS: GNU/Linux -- 3.10.0-862.3.2.el7.x86_64 -- #1 SMP Mon May 21 23:36:36 UTC 2018 Machine: x86_64 (x86_64) Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8") CPU 0: Intel(R) Atom(TM) CPU E3825 @ 1.33GHz (2666.7 bogomips) Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET CPU 1: Intel(R) Atom(TM) CPU E3825 @ 1.33GHz (2666.7 bogomips) Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET 14:06:52 up 24 min, 1 user, load average: 0.53, 0.60, 0.43; runlevel 2018-05-26 ------------------------------------------------------------------------ Benchmark Run: 土 5月 26 2018 14:06:52 - 14:34:55 2 CPUs in system; running 1 parallel copy of tests Dhrystone 2 using register variables 5575463.9 lps (10.1 s, 7 samples) Double-Precision Whetstone 944.0 MWIPS (9.9 s, 7 samples) Execl Throughput 182.9 lps (30.0 s, 2 samples) File Copy 1024 bufsize 2000 maxblocks 43825.2 KBps (30.0 s, 2 samples) File Copy 256 bufsize 500 maxblocks 11519.1 KBps (30.0 s, 2 samples) File Copy 4096 bufsize 8000 maxblocks 144390.4 KBps (30.0 s, 2 samples) Pipe Throughput 72751.1 lps (10.1 s, 7 samples) Pipe-based Context Switching 15937.1 lps (10.1 s, 7 samples) Process Creation 804.2 lps (30.1 s, 2 samples) Shell Scripts (1 concurrent) 585.1 lpm (60.1 s, 2 samples) Shell Scripts (8 concurrent) 124.1 lpm (60.4 s, 2 samples) System Call Overhead 71101.7 lps (10.1 s, 7 samples) System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 5575463.9 477.8 Double-Precision Whetstone 55.0 944.0 171.6 Execl Throughput 43.0 182.9 42.5 File Copy 1024 bufsize 2000 maxblocks 3960.0 43825.2 110.7 File Copy 256 bufsize 500 maxblocks 1655.0 11519.1 69.6 File Copy 4096 bufsize 8000 maxblocks 5800.0 144390.4 248.9 Pipe Throughput 12440.0 72751.1 58.5 Pipe-based Context Switching 4000.0 15937.1 39.8 Process Creation 126.0 804.2 63.8 Shell Scripts (1 concurrent) 42.4 585.1 138.0 Shell Scripts (8 concurrent) 6.0 124.1 206.9 System Call Overhead 15000.0 71101.7 47.4 ======== System Benchmarks Index Score 102.5 ------------------------------------------------------------------------ Benchmark Run: 土 5月 26 2018 14:34:55 - 15:03:15 2 CPUs in system; running 2 parallel copies of tests Dhrystone 2 using register variables 10649265.9 lps (10.1 s, 7 samples) Double-Precision Whetstone 1750.2 MWIPS (10.1 s, 7 samples) Execl Throughput 497.9 lps (29.9 s, 2 samples) File Copy 1024 bufsize 2000 maxblocks 71711.0 KBps (30.0 s, 2 samples) File Copy 256 bufsize 500 maxblocks 19168.9 KBps (30.0 s, 2 samples) File Copy 4096 bufsize 8000 maxblocks 217233.6 KBps (30.0 s, 2 samples) Pipe Throughput 138453.5 lps (10.1 s, 7 samples) Pipe-based Context Switching 34630.9 lps (10.1 s, 7 samples) Process Creation 1718.7 lps (30.1 s, 2 samples) Shell Scripts (1 concurrent) 940.1 lpm (60.1 s, 2 samples) Shell Scripts (8 concurrent) 129.2 lpm (60.6 s, 2 samples) System Call Overhead 134475.8 lps (10.1 s, 7 samples) System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 10649265.9 912.5 Double-Precision Whetstone 55.0 1750.2 318.2 Execl Throughput 43.0 497.9 115.8 File Copy 1024 bufsize 2000 maxblocks 3960.0 71711.0 181.1 File Copy 256 bufsize 500 maxblocks 1655.0 19168.9 115.8 File Copy 4096 bufsize 8000 maxblocks 5800.0 217233.6 374.5 Pipe Throughput 12440.0 138453.5 111.3 Pipe-based Context Switching 4000.0 34630.9 86.6 Process Creation 126.0 1718.7 136.4 Shell Scripts (1 concurrent) 42.4 940.1 221.7 Shell Scripts (8 concurrent) 6.0 129.2 215.3 System Call Overhead 15000.0 134475.8 89.7 ======== System Benchmarks Index Score 183.8
PINE A64+ とか Raspberry pi3 とかの方が,コア単体で比較しても3倍は高速で,おまけに4コアあるので,6倍くらいの違いがある.
CPU が AES-NI 対応しているようなので,openssl で速度を測ってみると,
$ openssl speed aes-256-cbc ..... The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes aes-256 cbc 10412.82k 13652.18k 14485.59k 41575.77k 43048.96ka $ openssl speed -evp aes-256-cbc ..... The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes aes-256-cbc 79765.19k 113771.37k 127300.75k 139034.28k 143630.34k
で,これも PINE A64+ の方が明らかに高性能.いつも使ってる Arm の SBC よりもかなり遅いんだから,そりゃ遅く感じる訳です.
E3825 が遅いのか Arm の SOC が速いのか……
これ,タイトルに付けた通り,
最近の Arm の SOC って速いのね.
って思うべきなんだと思います.と言うのも,E3825,
あたりを見ると,Athlon 3000+ とか Pentium4 3GHz などよりも速いんです.E3825 は2014年,Pentium4 は2007年くらいの製品です.わずか 5W で当時 80W の CPU とタメを張るのですから,消費電力から見ると,たった7年で性能は10倍超です.こう考えると,決して E3825 が遅いとは言えない.
逆に言えば,そこからたった3年後の Arm はさらに6倍近い性能を持っているということなんです.だから,やはり,最近の Arm の SOC ってとても速いと考えるべきで,と言うことは,
今私たちが手元で使ってるスマホとかは,数年前に買ったモバイル PC と性能は変わらない
って考えるべきなんでしょう.
Arm な Windows PC ってどんな使い心地なのか気になります.
以上!