UnixBench on Bash on Ubuntu on Windows

Windows 10 Insider PreviewのBash on Ubuntu on WindowsでUnixBenchを取ってみた。

# Build 14936

14393で下がったスコアが14376並みに戻ったというところ。ベンチマークの結果に大きな影響を与えるものではないが、Ubuntuのバージョンを16.04に上げてUnixBenchをコンパイルし直してから計測した。

```
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: DESKTOP-Q0G41NF: GNU/Linux
   OS: GNU/Linux -- 3.4.0+ -- #1 PREEMPT Thu Aug 1 17:06:05 CST 2013
   Machine: x86_64 (x86_64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (7198.0 bogomips)
          x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
   22:50:49 up 1 min,  0 users,  load average: 0.52, 0.58, 0.59; runlevel unknown

------------------------------------------------------------------------
Benchmark Run: 金  9月 30 2016 22:50:49 - 23:19:06
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       39542724.6 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     2963.4 MWIPS (9.8 s, 7 samples)
Execl Throughput                                 74.9 lps   (29.8 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        184111.9 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           49439.3 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        458070.0 KBps  (30.0 s, 2 samples)
Pipe Throughput                              469877.3 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 157108.1 lps   (10.0 s, 7 samples)
Process Creation                                442.3 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                    822.0 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    104.8 lpm   (60.4 s, 2 samples)
System Call Overhead                         838628.4 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   39542724.6   3388.4
Double-Precision Whetstone                       55.0       2963.4    538.8
Execl Throughput                                 43.0         74.9     17.4
File Copy 1024 bufsize 2000 maxblocks          3960.0     184111.9    464.9
File Copy 256 bufsize 500 maxblocks            1655.0      49439.3    298.7
File Copy 4096 bufsize 8000 maxblocks          5800.0     458070.0    789.8
Pipe Throughput                               12440.0     469877.3    377.7
Pipe-based Context Switching                   4000.0     157108.1    392.8
Process Creation                                126.0        442.3     35.1
Shell Scripts (1 concurrent)                     42.4        822.0    193.9
Shell Scripts (8 concurrent)                      6.0        104.8    174.6
System Call Overhead                          15000.0     838628.4    559.1
                                                                   ========
System Benchmarks Index Score                                         289.3
```

# Build 14393

14376→14393でスコアは290.3→235.1と大幅に悪化した。ファイルシステムが大幅に遅くなっている。

```
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: DESKTOP-Q0G41NF: GNU/Linux
   OS: GNU/Linux -- 3.4.0+ -- #1 PREEMPT Thu Aug 1 17:06:05 CST 2013
   Machine: x86_64 (x86_64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (7198.0 bogomips)
          x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
   19:18:25 up 0 min,  0 users,  load average: 0.52, 0.58, 0.59; runlevel

------------------------------------------------------------------------
Benchmark Run: Thu Jul 28 2016 19:18:25 - 19:47:01
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       34956133.2 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4170.5 MWIPS (11.8 s, 7 samples)
Execl Throughput                                 61.6 lps   (29.6 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        146517.2 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           37216.4 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        329754.8 KBps  (30.0 s, 2 samples)
Pipe Throughput                              329853.6 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 125333.7 lps   (10.0 s, 7 samples)
Process Creation                                323.0 lps   (30.1 s, 2 samples)
Shell Scripts (1 concurrent)                    615.9 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                     79.5 lpm   (60.3 s, 2 samples)
System Call Overhead                         677216.7 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   34956133.2   2995.4
Double-Precision Whetstone                       55.0       4170.5    758.3
Execl Throughput                                 43.0         61.6     14.3
File Copy 1024 bufsize 2000 maxblocks          3960.0     146517.2    370.0
File Copy 256 bufsize 500 maxblocks            1655.0      37216.4    224.9
File Copy 4096 bufsize 8000 maxblocks          5800.0     329754.8    568.5
Pipe Throughput                               12440.0     329853.6    265.2
Pipe-based Context Switching                   4000.0     125333.7    313.3
Process Creation                                126.0        323.0     25.6
Shell Scripts (1 concurrent)                     42.4        615.9    145.3
Shell Scripts (8 concurrent)                      6.0         79.5    132.5
System Call Overhead                          15000.0     677216.7    451.5
                                                                   ========
System Benchmarks Index Score                                         235.1
```

# Build 14376

14371→14376でスコアは301.5→290.3と下がった。初登場時(Build 14316)のスコア387.5を超えることなく、Anniversary Updateを迎える気配がする。

```
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: DESKTOP-Q0G41NF: GNU/Linux
   OS: GNU/Linux -- 3.4.0+ -- #1 PREEMPT Thu Aug 1 17:06:05 CST 2013
   Machine: x86_64 (x86_64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (7198.0 bogomips)
          x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
   15:12:30 up 0 min,  0 users,  load average: 0.52, 0.58, 0.59; runlevel

------------------------------------------------------------------------
Benchmark Run: Wed Jun 29 2016 15:12:30 - 15:41:05
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       40579087.8 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4176.2 MWIPS (12.3 s, 7 samples)
Execl Throughput                                 76.2 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        180334.5 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           47759.2 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        436739.0 KBps  (30.0 s, 2 samples)
Pipe Throughput                              414969.4 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 145199.1 lps   (10.0 s, 7 samples)
Process Creation                                419.7 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                    831.9 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    112.8 lpm   (60.1 s, 2 samples)
System Call Overhead                         781769.0 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   40579087.8   3477.2
Double-Precision Whetstone                       55.0       4176.2    759.3
Execl Throughput                                 43.0         76.2     17.7
File Copy 1024 bufsize 2000 maxblocks          3960.0     180334.5    455.4
File Copy 256 bufsize 500 maxblocks            1655.0      47759.2    288.6
File Copy 4096 bufsize 8000 maxblocks          5800.0     436739.0    753.0
Pipe Throughput                               12440.0     414969.4    333.6
Pipe-based Context Switching                   4000.0     145199.1    363.0
Process Creation                                126.0        419.7     33.3
Shell Scripts (1 concurrent)                     42.4        831.9    196.2
Shell Scripts (8 concurrent)                      6.0        112.8    188.0
System Call Overhead                          15000.0     781769.0    521.2
                                                                   ========
System Benchmarks Index Score                                         290.3
```

# Build 14371

14367→14371でスコアは285.3→301.5と上がった。全般的に改善されている。

```
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: DESKTOP-Q0G41NF: GNU/Linux
   OS: GNU/Linux -- 3.4.0+ -- #1 PREEMPT Thu Aug 1 17:06:05 CST 2013
   Machine: x86_64 (x86_64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (7198.0 bogomips)
          x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
   13:21:25 up 3 min,  0 users,  load average: 0.52, 0.58, 0.59; runlevel

------------------------------------------------------------------------
Benchmark Run: Thu Jun 23 2016 13:21:25 - 13:50:02
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       40297830.2 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4160.5 MWIPS (12.4 s, 7 samples)
Execl Throughput                                 70.2 lps   (29.8 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        181319.2 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           50250.9 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        501059.5 KBps  (30.0 s, 2 samples)
Pipe Throughput                              426686.4 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 160112.8 lps   (10.0 s, 7 samples)
Process Creation                                468.2 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                    853.7 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    111.1 lpm   (60.2 s, 2 samples)
System Call Overhead                         869182.2 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   40297830.2   3453.1
Double-Precision Whetstone                       55.0       4160.5    756.5
Execl Throughput                                 43.0         70.2     16.3
File Copy 1024 bufsize 2000 maxblocks          3960.0     181319.2    457.9
File Copy 256 bufsize 500 maxblocks            1655.0      50250.9    303.6
File Copy 4096 bufsize 8000 maxblocks          5800.0     501059.5    863.9
Pipe Throughput                               12440.0     426686.4    343.0
Pipe-based Context Switching                   4000.0     160112.8    400.3
Process Creation                                126.0        468.2     37.2
Shell Scripts (1 concurrent)                     42.4        853.7    201.3
Shell Scripts (8 concurrent)                      6.0        111.1    185.2
System Call Overhead                          15000.0     869182.2    579.5
                                                                   ========
System Benchmarks Index Score                                         301.5
```

# Build 14367

14366→14367でスコアは291.1→285.3とさらに下がった。

```
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: DESKTOP-Q0G41NF: GNU/Linux
   OS: GNU/Linux -- 3.4.0+ -- #1 PREEMPT Thu Aug 1 17:06:05 CST 2013
   Machine: x86_64 (x86_64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (7198.0 bogomips)
          x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
   16:13:05 up 0 min,  0 users,  load average: 0.52, 0.58, 0.59; runlevel

------------------------------------------------------------------------
Benchmark Run: Fri Jun 17 2016 16:13:05 - 16:41:36
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       39850812.6 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4296.0 MWIPS (11.7 s, 7 samples)
Execl Throughput                                 67.5 lps   (29.7 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        182479.7 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           47756.0 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        427983.0 KBps  (30.0 s, 2 samples)
Pipe Throughput                              401762.4 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 141657.6 lps   (10.0 s, 7 samples)
Process Creation                                420.0 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                    818.0 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    109.7 lpm   (60.4 s, 2 samples)
System Call Overhead                         789131.7 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   39850812.6   3414.8
Double-Precision Whetstone                       55.0       4296.0    781.1
Execl Throughput                                 43.0         67.5     15.7
File Copy 1024 bufsize 2000 maxblocks          3960.0     182479.7    460.8
File Copy 256 bufsize 500 maxblocks            1655.0      47756.0    288.6
File Copy 4096 bufsize 8000 maxblocks          5800.0     427983.0    737.9
Pipe Throughput                               12440.0     401762.4    323.0
Pipe-based Context Switching                   4000.0     141657.6    354.1
Process Creation                                126.0        420.0     33.3
Shell Scripts (1 concurrent)                     42.4        818.0    192.9
Shell Scripts (8 concurrent)                      6.0        109.7    182.9
System Call Overhead                          15000.0     789131.7    526.1
                                                                   ========
System Benchmarks Index Score                                         285.3
```

# Build 14366

14361→14366でスコアは294.6→291.1とやや下がった。

```
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: DESKTOP-Q0G41NF: GNU/Linux
   OS: GNU/Linux -- 3.4.0+ -- #1 PREEMPT Thu Aug 1 17:06:05 CST 2013
   Machine: x86_64 (x86_64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (7198.0 bogomips)
          x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
   23:30:01 up 0 min,  0 users,  load average: 0.52, 0.58, 0.59; runlevel

------------------------------------------------------------------------
Benchmark Run: Wed Jun 15 2016 23:30:01 - 23:58:34
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       40105417.3 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4225.7 MWIPS (12.0 s, 7 samples)
Execl Throughput                                 70.4 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        180047.4 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           48699.9 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        455366.3 KBps  (30.0 s, 2 samples)
Pipe Throughput                              396399.2 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 140356.9 lps   (10.0 s, 7 samples)
Process Creation                                431.6 lps   (30.1 s, 2 samples)
Shell Scripts (1 concurrent)                    864.9 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    117.5 lpm   (60.3 s, 2 samples)
System Call Overhead                         799184.2 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   40105417.3   3436.6
Double-Precision Whetstone                       55.0       4225.7    768.3
Execl Throughput                                 43.0         70.4     16.4
File Copy 1024 bufsize 2000 maxblocks          3960.0     180047.4    454.7
File Copy 256 bufsize 500 maxblocks            1655.0      48699.9    294.3
File Copy 4096 bufsize 8000 maxblocks          5800.0     455366.3    785.1
Pipe Throughput                               12440.0     396399.2    318.6
Pipe-based Context Switching                   4000.0     140356.9    350.9
Process Creation                                126.0        431.6     34.3
Shell Scripts (1 concurrent)                     42.4        864.9    204.0
Shell Scripts (8 concurrent)                      6.0        117.5    195.8
System Call Overhead                          15000.0     799184.2    532.8
                                                                   ========
System Benchmarks Index Score                                         291.1
```

# Build 14361

14352→14361でスコアは372.0→294.6とひどく悪化した。これまで良好だったexecのスループットが十分の一以下にまで悪化している。Cygwinのスコアの282.3と大差がなくなってしまった。このビルドではptyが実装されたが、その影響だろうか。

```
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: DESKTOP-Q0G41NF: GNU/Linux
   OS: GNU/Linux -- 3.4.0+ -- #1 PREEMPT Thu Aug 1 17:06:05 CST 2013
   Machine: x86_64 (x86_64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (7198.0 bogomips)
          x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
   15:38:21 up 0 min,  0 users,  load average: 0.52, 0.58, 0.59; runlevel

------------------------------------------------------------------------
Benchmark Run: Fri Jun 10 2016 15:38:21 - 16:07:04
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       40699567.8 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4070.7 MWIPS (12.9 s, 7 samples)
Execl Throughput                                 74.3 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        188711.5 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           48873.6 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        479003.8 KBps  (30.0 s, 2 samples)
Pipe Throughput                              396615.8 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 138459.5 lps   (10.0 s, 7 samples)
Process Creation                                466.6 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                    816.6 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    113.3 lpm   (60.1 s, 2 samples)
System Call Overhead                         831656.2 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   40699567.8   3487.5
Double-Precision Whetstone                       55.0       4070.7    740.1
Execl Throughput                                 43.0         74.3     17.3
File Copy 1024 bufsize 2000 maxblocks          3960.0     188711.5    476.5
File Copy 256 bufsize 500 maxblocks            1655.0      48873.6    295.3
File Copy 4096 bufsize 8000 maxblocks          5800.0     479003.8    825.9
Pipe Throughput                               12440.0     396615.8    318.8
Pipe-based Context Switching                   4000.0     138459.5    346.1
Process Creation                                126.0        466.6     37.0
Shell Scripts (1 concurrent)                     42.4        816.6    192.6
Shell Scripts (8 concurrent)                      6.0        113.3    188.8
System Call Overhead                          15000.0     831656.2    554.4
                                                                   ========
System Benchmarks Index Score                                         294.6
```

# Build 14352

14342→14352でスコアは356.4→372.0と上がった。ついにPipe-based Context Switchingが完走するようになった。全体的に性能が改善されており、特にファイルシステムとforkの改善が著しい。

```
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: DESKTOP-Q0G41NF: GNU/Linux
   OS: GNU/Linux -- 3.4.0+ -- #1 PREEMPT Thu Aug 1 17:06:05 CST 2013
   Machine: x86_64 (x86_64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (7198.0 bogomips)
          x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
   14:15:19 up 0 min,  0 users,  load average: 0.52, 0.58, 0.59; runlevel

------------------------------------------------------------------------
Benchmark Run: Tue May 31 2016 14:15:19 - 14:43:46
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       39539304.1 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4371.1 MWIPS (11.3 s, 7 samples)
Execl Throughput                                951.8 lps   (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        190070.9 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           50124.3 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        437662.4 KBps  (30.0 s, 2 samples)
Pipe Throughput                              401655.6 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 149641.0 lps   (10.0 s, 7 samples)
Process Creation                                421.6 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                    923.8 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    130.5 lpm   (60.2 s, 2 samples)
System Call Overhead                         840546.2 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   39539304.1   3388.1
Double-Precision Whetstone                       55.0       4371.1    794.7
Execl Throughput                                 43.0        951.8    221.3
File Copy 1024 bufsize 2000 maxblocks          3960.0     190070.9    480.0
File Copy 256 bufsize 500 maxblocks            1655.0      50124.3    302.9
File Copy 4096 bufsize 8000 maxblocks          5800.0     437662.4    754.6
Pipe Throughput                               12440.0     401655.6    322.9
Pipe-based Context Switching                   4000.0     149641.0    374.1
Process Creation                                126.0        421.6     33.5
Shell Scripts (1 concurrent)                     42.4        923.8    217.9
Shell Scripts (8 concurrent)                      6.0        130.5    217.5
System Call Overhead                          15000.0     840546.2    560.4
                                                                   ========
System Benchmarks Index Score                                         372.0
```

# Build 14342

このビルドまではPipe-based Context Switchingでランダムに止まっていたので、何度も実行して完走した結果を示していた。14332→14342でスコアは363.9→356.4と下がったが特筆すべき点はない。

```
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: DESKTOP-Q0G41NF: GNU/Linux
   OS: GNU/Linux -- 3.4.0+ -- #1 PREEMPT Thu Aug 1 17:06:05 CST 2013
   Machine: x86_64 (x86_64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (7198.0 bogomips)
          x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
   13:53:11 up 20 min,  0 users,  load average: 0.52, 0.58, 0.59; runlevel

------------------------------------------------------------------------
Benchmark Run: Wed May 11 2016 13:53:11 - 14:21:31
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       36424170.2 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4580.2 MWIPS (10.4 s, 7 samples)
Execl Throughput                                999.0 lps   (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        175142.0 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           46211.7 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        412678.6 KBps  (30.0 s, 2 samples)
Pipe Throughput                              395262.8 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 147129.9 lps   (10.0 s, 7 samples)
Process Creation                                338.1 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                    951.3 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    127.2 lpm   (60.1 s, 2 samples)
System Call Overhead                         796357.3 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   36424170.2   3121.2
Double-Precision Whetstone                       55.0       4580.2    832.8
Execl Throughput                                 43.0        999.0    232.3
File Copy 1024 bufsize 2000 maxblocks          3960.0     175142.0    442.3
File Copy 256 bufsize 500 maxblocks            1655.0      46211.7    279.2
File Copy 4096 bufsize 8000 maxblocks          5800.0     412678.6    711.5
Pipe Throughput                               12440.0     395262.8    317.7
Pipe-based Context Switching                   4000.0     147129.9    367.8
Process Creation                                126.0        338.1     26.8
Shell Scripts (1 concurrent)                     42.4        951.3    224.4
Shell Scripts (8 concurrent)                      6.0        127.2    212.1
System Call Overhead                          15000.0     796357.3    530.9
                                                                   ========
System Benchmarks Index Score                                         356.4
```

# Build 14332

14328→14332でスコアは320.5→363.9と大きく改善した。14328で大きく悪化していたPipe-based Context Switchingが123.9→390.1と改善したのが影響している。

```
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: DESKTOP-Q0G41NF: GNU/Linux
   OS: GNU/Linux -- 3.4.0+ -- #1 PREEMPT Thu Aug 1 17:06:05 CST 2013
   Machine: x86_64 (x86_64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (7198.0 bogomips)
          x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
   06:22:38 up 9 min,  0 users,  load average: 0.52, 0.58, 0.59; runlevel

------------------------------------------------------------------------
Benchmark Run: Wed Apr 27 2016 06:22:38 - 06:50:55
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       38293313.2 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4608.2 MWIPS (10.4 s, 7 samples)
Execl Throughput                                942.4 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        170294.7 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           45094.8 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        446054.4 KBps  (30.0 s, 2 samples)
Pipe Throughput                              422400.7 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 156047.9 lps   (10.0 s, 7 samples)
Process Creation                                346.0 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                    968.2 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    138.4 lpm   (60.3 s, 2 samples)
System Call Overhead                         776573.1 lps   (10.1 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   38293313.2   3281.3
Double-Precision Whetstone                       55.0       4608.2    837.9
Execl Throughput                                 43.0        942.4    219.2
File Copy 1024 bufsize 2000 maxblocks          3960.0     170294.7    430.0
File Copy 256 bufsize 500 maxblocks            1655.0      45094.8    272.5
File Copy 4096 bufsize 8000 maxblocks          5800.0     446054.4    769.1
Pipe Throughput                               12440.0     422400.7    339.6
Pipe-based Context Switching                   4000.0     156047.9    390.1
Process Creation                                126.0        346.0     27.5
Shell Scripts (1 concurrent)                     42.4        968.2    228.4
Shell Scripts (8 concurrent)                      6.0        138.4    230.7
System Call Overhead                          15000.0     776573.1    517.7
                                                                   ========
System Benchmarks Index Score                                         363.9
```

# Build 14328

14316→14328でスコアは387.5→320.5と大幅に悪化した。元々遅かったファイルシステム(/root)がさらに遅くなったのと、パイプの性能が大幅に悪化したのが影響している。


```
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: DESKTOP-Q0G41NF: GNU/Linux
   OS: GNU/Linux -- 3.4.0+ -- #1 PREEMPT Thu Aug 1 17:06:05 CST 2013
   Machine: x86_64 (x86_64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (7198.0 bogomips)
          x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
   09:58:53 up 53 min,  0 users,  load average: 0.52, 0.58, 0.59; runlevel

------------------------------------------------------------------------
Benchmark Run: Tue Apr 26 2016 09:58:53 - 10:27:16
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       38437706.0 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4389.6 MWIPS (11.2 s, 7 samples)
Execl Throughput                                947.0 lps   (29.5 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        170746.1 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           46697.7 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        433636.0 KBps  (30.0 s, 2 samples)
Pipe Throughput                              400982.4 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  49550.3 lps   (10.0 s, 7 samples)
Process Creation                                334.2 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                    844.3 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    125.3 lpm   (60.4 s, 2 samples)
System Call Overhead                         760776.3 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   38437706.0   3293.7
Double-Precision Whetstone                       55.0       4389.6    798.1
Execl Throughput                                 43.0        947.0    220.2
File Copy 1024 bufsize 2000 maxblocks          3960.0     170746.1    431.2
File Copy 256 bufsize 500 maxblocks            1655.0      46697.7    282.2
File Copy 4096 bufsize 8000 maxblocks          5800.0     433636.0    747.6
Pipe Throughput                               12440.0     400982.4    322.3
Pipe-based Context Switching                   4000.0      49550.3    123.9
Process Creation                                126.0        334.2     26.5
Shell Scripts (1 concurrent)                     42.4        844.3    199.1
Shell Scripts (8 concurrent)                      6.0        125.3    208.8
System Call Overhead                          15000.0     760776.3    507.2
                                                                   ========
System Benchmarks Index Score                                         320.5
```

# Build 14316

後述する同じVMで動かしたCygwinの結果と比べて、execが8倍くらい速いのでシェルスクリプトの実行速度で大きな差が付いている。Cygwinが最も苦手とするProcess Creation (fork)で2倍しか差がないので、forkはそれほど速くない。ファイルシステムはCygwinと比べてやや遅い。この結果は/rootで取ったが、/mnt/cの下で取ると少し早いもののCygwinに及ばない。

```
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: localhost: GNU/Linux
   OS: GNU/Linux -- 3.4.0+ -- #1 PREEMPT Thu Aug 1 17:06:05 CST 2013
   Machine: x86_64 (x86_64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (7198.0 bogomips)
          x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
   ; runlevel

------------------------------------------------------------------------
Benchmark Run: Sun Apr 10 2016 06:38:44 - 07:07:09
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       40038857.6 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4317.2 MWIPS (11.5 s, 7 samples)
Execl Throughput                                950.2 lps   (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        206862.6 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           56837.0 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        494333.2 KBps  (30.0 s, 2 samples)
Pipe Throughput                              526178.4 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 182092.0 lps   (10.0 s, 7 samples)
Process Creation                                305.2 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                    866.1 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    120.0 lpm   (60.3 s, 2 samples)
System Call Overhead                         990320.7 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   40038857.6   3430.9
Double-Precision Whetstone                       55.0       4317.2    784.9
Execl Throughput                                 43.0        950.2    221.0
File Copy 1024 bufsize 2000 maxblocks          3960.0     206862.6    522.4
File Copy 256 bufsize 500 maxblocks            1655.0      56837.0    343.4
File Copy 4096 bufsize 8000 maxblocks          5800.0     494333.2    852.3
Pipe Throughput                               12440.0     526178.4    423.0
Pipe-based Context Switching                   4000.0     182092.0    455.2
Process Creation                                126.0        305.2     24.2
Shell Scripts (1 concurrent)                     42.4        866.1    204.3
Shell Scripts (8 concurrent)                      6.0        120.0    200.0
System Call Overhead                          15000.0     990320.7    660.2
                                                                   ========
System Benchmarks Index Score                                         387.5
```

/mnt/cで取ったファイルシステムのベンチマークの結果を示す。

```
File Copy 1024 bufsize 2000 maxblocks        225299.6 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           61408.0 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        551098.9 KBps  (30.0 s, 2 samples)

System Benchmarks Partial Index              BASELINE       RESULT    INDEX
File Copy 1024 bufsize 2000 maxblocks          3960.0     225299.6    568.9
File Copy 256 bufsize 500 maxblocks            1655.0      61408.0    371.0
File Copy 4096 bufsize 8000 maxblocks          5800.0     551098.9    950.2
```

# Cygwin

比較対象として同じVMで動かしたCygwinの結果を示す。

```
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: DESKTOP-Q0G41NF: Cygwin
   OS: Cygwin -- 2.4.1(0.293/5/3) -- 2016-01-24 11:26
   Machine: x86_64 (unknown)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (0.0 bogomips)
          MMX, Physical Address Ext, SYSENTER/SYSEXIT
   ; runlevel

------------------------------------------------------------------------
Benchmark Run: 金 4月 08 2016 18:32:49 - 19:01:03
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       43537216.2 lps   (10.1 s, 7 samples)
Double-Precision Whetstone                     6510.8 MWIPS (9.0 s, 7 samples)
Execl Throughput                                119.1 lps   (30.1 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        348808.0 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           95376.7 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        686007.1 KBps  (30.0 s, 2 samples)
Pipe Throughput                              413620.0 lps   (10.1 s, 7 samples)
Pipe-based Context Switching                 119580.0 lps   (10.1 s, 7 samples)
Process Creation                                155.0 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                    278.2 lpm   (60.2 s, 2 samples)
Shell Scripts (8 concurrent)                     38.1 lpm   (60.6 s, 2 samples)
System Call Overhead                        1026302.4 lps   (10.1 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   43537216.2   3730.7
Double-Precision Whetstone                       55.0       6510.8   1183.8
Execl Throughput                                 43.0        119.1     27.7
File Copy 1024 bufsize 2000 maxblocks          3960.0     348808.0    880.8
File Copy 256 bufsize 500 maxblocks            1655.0      95376.7    576.3
File Copy 4096 bufsize 8000 maxblocks          5800.0     686007.1   1182.8
Pipe Throughput                               12440.0     413620.0    332.5
Pipe-based Context Switching                   4000.0     119580.0    298.9
Process Creation                                126.0        155.0     12.3
Shell Scripts (1 concurrent)                     42.4        278.2     65.6
Shell Scripts (8 concurrent)                      6.0         38.1     63.5
System Call Overhead                          15000.0    1026302.4    684.2
                                                                   ========
System Benchmarks Index Score                                         282.3

```