Raspberry Pi 3B/3B+と電源の組み合わせでUnixBenchを動かしてみた

# はじめに
Raspberry Pi 3 Model B+を入手して、はやくなったよーと話を聞いていたけど、どれくらい早くなっているのか気になったのでベンチマークを取ってみました。


## 実行環境
- OS : 2018-04-18-raspbian-stretch-lite
- microSD : [microSDXC/SDHC Class 10 ](https://www.transcend-info.com/Products/No-320), 8GB


## 実行コマンド

SSH経由で実行

```shell
$ sudo apt update
$ sudo apt upgrade
$ sudo apt install git 
$ git clone https://github.com/kdlucas/byte-unixbench
$ cd byte-unixbench/UnixBench
$ ./Run
```

Raspberry Pi 3 Model BとRaspberry Pi 3 Model B+、若干アーキティチャーが違うらしく、3BのSDカードを3B+で使わないでくださいというメモが同封されていたので、機械を変えるごとにSDカードのフォーマットとSDカードにイメージを書き込んでいます。

#ベンチマーク

結果のサマリ。

|#|Type|Ampere|running 1 parallel copy of tests|running 4 parallel copies of test|
|---|---|---|---|---|
|1.|3B+|2.0A|308.1|442.4|
|2.|3B+|3.0A|355.8|783.8|
|3.|3B|2.0A|276.5|552.8|
|4.|3B|3.0A|312.2|779.1|

- 5V 3.0Aの電源を使用した場合、3B+が早い。
- 5V 2.0Aの電源を使用した場合のシングルスレッド、3B+が早い。
- 5V 2.0Aの電源を使用した場合のマルチスレッド、3Bが早い。


## Raspberry Pi 3 Model B+ 【電源 5V, 2.0Aの場合】

電流値が足りなくて、コンソール(HDMI出力)で警告がたくさん出てました。

```
========================================================================
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: raspberrypi: GNU/Linux
   OS: GNU/Linux -- 4.14.34-v7+ -- #1110 SMP Mon Apr 16 15:18:51 BST 2018
   Machine: armv7l (unknown)
   Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968")
   CPU 0: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 1: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 2: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 3: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   10:13:22 up 5 min,  1 user,  load average: 0.23, 0.35, 0.19; runlevel Apr

------------------------------------------------------------------------
Benchmark Run: Sun Jun 17 2018 10:13:22 - 10:41:30
4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables        5056831.9 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     1237.5 MWIPS (9.9 s, 7 samples)
Execl Throughput                               1083.0 lps   (29.6 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        157288.9 KBpsg  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           47232.4 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        356708.5 KBps  (30.0 s, 2 samples)
Pipe Throughput                              343233.0 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  61349.4 lps   (10.0 s, 7 samples)
Process Creation                               1794.6 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   1198.4 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    337.5 lpm   (60.1 s, 2 samples)
System Call Overhead                         670443.4 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    5056831.9    433.3
Double-Precision Whetstone                       55.0       1237.5    225.0
Execl Throughput                                 43.0       1083.0    251.8
File Copy 1024 bufsize 2000 maxblocks          3960.0     157288.9    397.2
File Copy 256 bufsize 500 maxblocks            1655.0      47232.4    285.4
File Copy 4096 bufsize 8000 maxblocks          5800.0     356708.5    615.0
Pipe Throughput                               12440.0     343233.0    275.9
Pipe-based Context Switching                   4000.0      61349.4    153.4
Process Creation                                126.0       1794.6    142.4
Shell Scripts (1 concurrent)                     42.4       1198.4    282.6
Shell Scripts (8 concurrent)                      6.0        337.5    562.4
System Call Overhead                          15000.0     670443.4    447.0
                                                                   ========
System Benchmarks Index Score                                         308.1

------------------------------------------------------------------------
Benchmark Run: Sun Jun 17 2018 10:41:30 - 11:09:42
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables        8910258.5 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     2943.2 MWIPS (7.9 s, 7 samples)
Execl Throughput                               1307.8 lps   (29.8 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        122553.6 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           33132.5 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        329416.8 KBps  (30.0 s, 2 samples)
Pipe Throughput                              605402.2 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 122263.8 lps   (10.0 s, 7 samples)
Process Creation                               3046.6 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   2664.8 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    359.6 lpm   (60.5 s, 2 samples)
System Call Overhead                        1424579.5 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    8910258.5    763.5
Double-Precision Whetstone                       55.0       2943.2    535.1
Execl Throughput                                 43.0       1307.8    304.1
File Copy 1024 bufsize 2000 maxblocks          3960.0     122553.6    309.5
File Copy 256 bufsize 500 maxblocks            1655.0      33132.5    200.2
File Copy 4096 bufsize 8000 maxblocks          5800.0     329416.8    568.0
Pipe Throughput                               12440.0     605402.2    486.7
Pipe-based Context Switching                   4000.0     122263.8    305.7
Process Creation                                126.0       3046.6    241.8
Shell Scripts (1 concurrent)                     42.4       2664.8    628.5
Shell Scripts (8 concurrent)                      6.0        359.6    599.3
System Call Overhead                          15000.0    1424579.5    949.7
                                                                   ========
System Benchmarks Index Score                                         442.4

```

## Raspberry Pi 3 Model B+ 【電源 5V, 3.0Aの場合】

```
========================================================================
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: raspberrypi: GNU/Linux
   OS: GNU/Linux -- 4.14.34-v7+ -- #1110 SMP Mon Apr 16 15:18:51 BST 2018
   Machine: armv7l (unknown)
   Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968")
   CPU 0: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 1: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 2: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 3: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   10:47:36 up 2 min,  1 user,  load average: 0.05, 0.05, 0.01; runlevel Jun

------------------------------------------------------------------------
Benchmark Run: Mon Jun 18 2018 10:47:36 - 11:15:41
4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables        5061681.5 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     1238.6 MWIPS (9.9 s, 7 samples)
Execl Throughput                               1073.1 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        158305.2 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           47425.0 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        371694.3 KBps  (30.0 s, 2 samples)
Pipe Throughput                              342347.0 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  71096.9 lps   (10.0 s, 7 samples)
Process Creation                               2454.5 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   2137.7 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    641.6 lpm   (60.1 s, 2 samples)
System Call Overhead                         672695.8 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    5061681.5    433.7
Double-Precision Whetstone                       55.0       1238.6    225.2
Execl Throughput                                 43.0       1073.1    249.6
File Copy 1024 bufsize 2000 maxblocks          3960.0     158305.2    399.8
File Copy 256 bufsize 500 maxblocks            1655.0      47425.0    286.6
File Copy 4096 bufsize 8000 maxblocks          5800.0     371694.3    640.9
Pipe Throughput                               12440.0     342347.0    275.2
Pipe-based Context Switching                   4000.0      71096.9    177.7
Process Creation                                126.0       2454.5    194.8
Shell Scripts (1 concurrent)                     42.4       2137.7    504.2
Shell Scripts (8 concurrent)                      6.0        641.6   1069.4
System Call Overhead                          15000.0     672695.8    448.5
                                                                   ========
System Benchmarks Index Score                                         355.8

------------------------------------------------------------------------
Benchmark Run: Mon Jun 18 2018 11:15:41 - 11:44:06
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables       17551748.2 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4309.6 MWIPS (11.3 s, 7 samples)
Execl Throughput                               2256.3 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        236474.4 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           63637.9 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        587143.3 KBps  (30.0 s, 2 samples)
Pipe Throughput                             1173153.0 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 239052.0 lps   (10.0 s, 7 samples)
Process Creation                               4902.9 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   4627.9 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    634.2 lpm   (60.2 s, 2 samples)
System Call Overhead                        2218194.7 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   17551748.2   1504.0
Double-Precision Whetstone                       55.0       4309.6    783.6
Execl Throughput                                 43.0       2256.3    524.7
File Copy 1024 bufsize 2000 maxblocks          3960.0     236474.4    597.2
File Copy 256 bufsize 500 maxblocks            1655.0      63637.9    384.5
File Copy 4096 bufsize 8000 maxblocks          5800.0     587143.3   1012.3
Pipe Throughput                               12440.0    1173153.0    943.0
Pipe-based Context Switching                   4000.0     239052.0    597.6
Process Creation                                126.0       4902.9    389.1
Shell Scripts (1 concurrent)                     42.4       4627.9   1091.5
Shell Scripts (8 concurrent)                      6.0        634.2   1057.1
System Call Overhead                          15000.0    2218194.7   1478.8
                                                                   ========
System Benchmarks Index Score                                         783.8

```

## Raspberry Pi 3 Model B 【電源 5V, 2.0Aの場合】

電流値が足りなくて、コンソール(HDMI出力)で警告がたくさん出てました。
温度警告の表示も点灯してたり。

```
========================================================================
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: raspberrypi: GNU/Linux
   OS: GNU/Linux -- 4.14.34-v7+ -- #1110 SMP Mon Apr 16 15:18:51 BST 2018
   Machine: armv7l (unknown)
   Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968")
   CPU 0: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 1: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 2: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 3: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   13:11:22 up 0 min,  1 user,  load average: 0.17, 0.06, 0.02; runlevel Jun

------------------------------------------------------------------------
Benchmark Run: Mon Jun 18 2018 13:11:22 - 13:39:30
4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables        4338436.2 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     1060.4 MWIPS (9.9 s, 7 samples)
Execl Throughput                                951.5 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        136781.0 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           40424.7 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        343526.3 KBps  (30.0 s, 2 samples)
Pipe Throughput                              294266.3 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  60753.8 lps   (10.0 s, 7 samples)
Process Creation                               1410.2 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   1194.0 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    345.1 lpm   (60.2 s, 2 samples)
System Call Overhead                         579737.8 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    4338436.2    371.8
Double-Precision Whetstone                       55.0       1060.4    192.8
Execl Throughput                                 43.0        951.5    221.3
File Copy 1024 bufsize 2000 maxblocks          3960.0     136781.0    345.4
File Copy 256 bufsize 500 maxblocks            1655.0      40424.7    244.3
File Copy 4096 bufsize 8000 maxblocks          5800.0     343526.3    592.3
Pipe Throughput                               12440.0     294266.3    236.5
Pipe-based Context Switching                   4000.0      60753.8    151.9
Process Creation                                126.0       1410.2    111.9
Shell Scripts (1 concurrent)                     42.4       1194.0    281.6
Shell Scripts (8 concurrent)                      6.0        345.1    575.1
System Call Overhead                          15000.0     579737.8    386.5
                                                                   ========
System Benchmarks Index Score                                         276.5

------------------------------------------------------------------------
Benchmark Run: Mon Jun 18 2018 13:39:30 - 14:07:50
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables       14122797.6 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     2550.9 MWIPS (8.2 s, 7 samples)
Execl Throughput                               1346.9 lps   (29.8 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        210083.5 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           59418.5 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        449648.7 KBps  (30.0 s, 2 samples)
Pipe Throughput                              754827.0 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 226921.3 lps   (10.0 s, 7 samples)
Process Creation                               2911.5 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   2762.0 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    431.9 lpm   (60.4 s, 2 samples)
System Call Overhead                        1261392.3 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   14122797.6   1210.2
Double-Precision Whetstone                       55.0       2550.9    463.8
Execl Throughput                                 43.0       1346.9    313.2
File Copy 1024 bufsize 2000 maxblocks          3960.0     210083.5    530.5
File Copy 256 bufsize 500 maxblocks            1655.0      59418.5    359.0
File Copy 4096 bufsize 8000 maxblocks          5800.0     449648.7    775.3
Pipe Throughput                               12440.0     754827.0    606.8
Pipe-based Context Switching                   4000.0     226921.3    567.3
Process Creation                                126.0       2911.5    231.1
Shell Scripts (1 concurrent)                     42.4       2762.0    651.4
Shell Scripts (8 concurrent)                      6.0        431.9    719.9
System Call Overhead                          15000.0    1261392.3    840.9
                                                                   ========
System Benchmarks Index Score                                         552.8

```


## Raspberry Pi 3 Model B 【電源 5V, 3.0Aの場合】

```
========================================================================
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: raspberrypi: GNU/Linux
   OS: GNU/Linux -- 4.14.34-v7+ -- #1110 SMP Mon Apr 16 15:18:51 BST 2018
   Machine: armv7l (unknown)
   Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968")
   CPU 0: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 1: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 2: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   CPU 3: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
          
   12:09:22 up 1 min,  1 user,  load average: 0.25, 0.07, 0.02; runlevel Jun

------------------------------------------------------------------------
Benchmark Run: Mon Jun 18 2018 12:09:22 - 12:37:32
4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables        4340520.8 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     1061.4 MWIPS (9.9 s, 7 samples)
Execl Throughput                                954.9 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        138503.9 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           40566.5 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        345448.5 KBps  (30.0 s, 2 samples)
Pipe Throughput                              294819.0 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  61330.5 lps   (10.0 s, 7 samples)
Process Creation                               2070.0 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   1926.8 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    604.0 lpm   (60.1 s, 2 samples)
System Call Overhead                         578260.6 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    4340520.8    371.9
Double-Precision Whetstone                       55.0       1061.4    193.0
Execl Throughput                                 43.0        954.9    222.1
File Copy 1024 bufsize 2000 maxblocks          3960.0     138503.9    349.8
File Copy 256 bufsize 500 maxblocks            1655.0      40566.5    245.1
File Copy 4096 bufsize 8000 maxblocks          5800.0     345448.5    595.6
Pipe Throughput                               12440.0     294819.0    237.0
Pipe-based Context Switching                   4000.0      61330.5    153.3
Process Creation                                126.0       2070.0    164.3
Shell Scripts (1 concurrent)                     42.4       1926.8    454.4
Shell Scripts (8 concurrent)                      6.0        604.0   1006.6
System Call Overhead                          15000.0     578260.6    385.5
                                                                   ========
System Benchmarks Index Score                                         312.2

------------------------------------------------------------------------
Benchmark Run: Mon Jun 18 2018 12:37:32 - 13:05:46
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables       17247074.6 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4234.9 MWIPS (9.9 s, 7 samples)
Execl Throughput                               2266.3 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        233294.6 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           63137.4 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        543352.4 KBps  (30.0 s, 2 samples)
Pipe Throughput                             1178818.7 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 242635.0 lps   (10.0 s, 7 samples)
Process Creation                               4907.9 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   4698.9 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    646.7 lpm   (60.2 s, 2 samples)
System Call Overhead                        2223012.4 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   17247074.6   1477.9
Double-Precision Whetstone                       55.0       4234.9    770.0
Execl Throughput                                 43.0       2266.3    527.0
File Copy 1024 bufsize 2000 maxblocks          3960.0     233294.6    589.1
File Copy 256 bufsize 500 maxblocks            1655.0      63137.4    381.5
File Copy 4096 bufsize 8000 maxblocks          5800.0     543352.4    936.8
Pipe Throughput                               12440.0    1178818.7    947.6
Pipe-based Context Switching                   4000.0     242635.0    606.6
Process Creation                                126.0       4907.9    389.5
Shell Scripts (1 concurrent)                     42.4       4698.9   1108.2
Shell Scripts (8 concurrent)                      6.0        646.7   1077.9
System Call Overhead                          15000.0    2223012.4   1482.0
                                                                   ========
System Benchmarks Index Score                                         779.1
```

# 最後に
不思議なスコアになってしまったのが気になる。

## リンク
[VPSでUnixBenchを動かしてみた。2018/04/08, おまけ：Raspberry Pi 3 Model B](https://qiita.com/yyano/items/fd96ba5d7b79e1023339)