Mid2015は、10.13アップグレードは待ちの状態でmacOS Sierra 10.12.6で使っています。Mid2015はHaswell世代の15インチ Core i7モデルです。2018年1月24日にリリースされたSafari 11.0.3とセキュリティアップデート2018-001は、Meltdown/Spectreの問題を緩和してくれる対策が盛り込まれています。古めのCPUは影響をもろに受けるとのことが明らかになっています。そこでpeacekeeper、Kraken、b-mark、UnixBenchで性能を比較してパフォーマンスの違いを比較して見ました。
細かい数値は、これからご紹介します。まとめると、ブラウジングは同等、シングルCPUは25.94%の性能ダウン、普段使いのマルチCPUの性能は変わらないという比較結果になりました。シングルCPUのパフォーマンスダウンは気になるところですがトータル性能はさほど変わらなかったのが嬉しいところです。
Meltdown/Spectreの影響は?Safari 11.0.3のパフォーマンス
Safari 11.0.2でSpectre(CVE-2017-5753とCVE-2017-5715)の軽減策が盛り込まれています。11.0.3ではMeltdown/Spectre関連の対策は特にありません。セキュリティアップデート2018-001を適用する前の状態として比較しています。
Safari 11.0.3 HTML5の性能は、若干ダウンしています。普段使いでは気にならない程度のダウンです。誤差の範疇かと思われます。HTML5のベンチマークツールとして、peacekeeperを使っています。Safariで開いてGoボタンをクリックすることでベンチマークできます。2回計測して良い結果で比較しました。
| HTML5ベンチマーク | スコア | 
|---|---|
| Safari 11.0.2 | 5679 | 
| Safari 11.0.3 | 5478 | 
性能評価項目Rendering、HTML5 Canvas、Data、DOM operations、Text parsingごとに詳しく見てみると、どこかが飛び抜けて悪いという訳ではなく、全項目少しずつスコアを落としているようです。
| ポイント | 11.0.3 | 11.0.2 | 
|---|---|---|
| Rendering | 79.45 | 80.95 | 
| HTML5 Canvas | 47.44 | 46.71 | 
| Data | 61926.49 | 60318.85 | 
| DOM operations | 58927.97 | 61902.40 | 
| Text parsing | 357657.49 | 34987.98 | 
SafariでJavascriptの性能は、等しいです。11.0.3の方が遅いですが、100ミリ秒未満の遅さなので気になるシーンは少ないと思います。Javascriptのベンチマークツールとして、Kraken JavaScript Benchmark (version 1.1)を利用しています。Safariで開いてRunリンクをクリックすることであっという間にベンチマークできます。2回計測して良い結果で比較しています。
| Javascriptベンチマーク | スコア | 
|---|---|
| Safari 11.0.2 | 876.4ms +/ー 1.1% | 
| Safari 11.0.3 | 930.6ms +/ー 1.1% | 
性能評価項目ai,audio,imaging,json,stanfordごとに詳しく見てみると、どこかが飛び抜けて悪いという訳ではなく、全項目少しずつスコアを落としていました。前述のHTML5と同様の傾向です。
セキュリティアップデート2018-001はWebGL/Canvas描画性能に影響を与える、11.0.3にアップデートしてもパフォーマンス影響はほぼない、SafariでWebGL/Canvasの描画性能ベンチマークツールとして、Wirpleのbmarkを利用しています。Safariで開いてStart testボタンをクリックすることで計測できます。2回実施し結果の良い数値で比較しています。このベンチマークを実行するとしばらくの間Macbook Pro Retina Mid2015のファンの風切り音が聞こえます。そこそこ負荷がかかった評価での結果です。
| WebGL/Canvasベンチマーク | スコア | 
|---|---|
| Safari 11.0.2 | 3089 | 
| Safari 11.0.3 | 2877 | 
以下どちらもSafari 11.0.3での計測結果です。右側の結果がセキュリティアップデート2018-001を適用したSafariです。
| Safari 11.0.3 | セキュリティアップデート2018-001 | 
|---|---|
| Canvas score Test 1:532 – Test 2:1013 WebGL socre Test 1:757 – Test 2:842 Total score: 3144  | 
Canvas score Test 1:418 – Test 2:920 WebGL socre Test 1:804 – Test 2:735 Total score: 2877  | 
macOS Sierra 10.12のMeltdown/Spectreの影響は?
macOS Sierra 10.12のMeltdown/Spectreの影響は?あるようでないといったところでしょうか。シングルCPUのベンチマークでは25%を超える性能低下が確認できました。ただマルチCPUでは4%程度の性能ダウンに収まっています。ここではmacOS Sierra 10.12.6のセキュリティアップデート2018-001適用前と適用後の性能をUnixBenchを使って比較しています。UnixBenchはソースコードを入手し、コンパイルする必要があります。2015年10月5日にコンパイルしたVersion 5.1.3で評価しています。UnixBenchはとても重いベンチマークで実行中ファンがぶんまわっています。どちらも1回のみ実施した結果を掲載しています。
| UnixBench | マルチCPU | シングルCPU | 
|---|---|---|
| macOS Sierra 10.12.6 2018-001未適用 | 2480.8 | 896.8 | 
| macOS Sierra 10.12.6 2018-001適用後 | 2368.7 | 664.2 | 
【シングルCPUの性能比較】
| macOS Sierra 10.12.6 | 2018-001適用後 | 適用前 | 
|---|---|---|
| Dhrystone 2 using register variables | 33,109,126.7 lps | 
31,664,689.9 lps | 
| Double-Precision Whetstone | 5,552.8 MWIPS | 
5,332.0 MWIPS | 
| Execl Throughput | 596.5 lps | 
639.3 lps | 
| File Copy 1024 bufsize 2000 maxblocks | 400,501.2 KBps | 
683,977.1 KBps | 
| File Copy 256 bufsize 500 maxblocks | 105,810.7 KBps | 
195,936.0 KBps | 
| File Copy 4096 bufsize 8000 maxblocks | 1,271,495.5 KBps | 
1,899,246.3 KBps | 
| Pipe Throughput | 543,103.1 lps | 
1,111,532.6 lps | 
| Pipe-based Context Switching | 132,933.4 lps | 
155,244.4 lps | 
| Process Creation | 2,393.5 lps | 
2,632.8 lps | 
| Shell Scripts (1 concurrent) | 3,477.3 lpm | 
3,617.3 lpm | 
| Shell Scripts (8 concurrent) | 1,329.8 lpm | 
1,362.5 lpm | 
| System Call Overhead | 391,792.8 lps | 
1,104,371.3 lps | 
【マルチCPUの性能比較】
| macOS Sierra 10.12.6 | 2018-001適用後 | 適用前 | 
|---|---|---|
| Dhrystone 2 using register variables | 144,992,279.5 lps | 
132,159,878.8 lps | 
| Double-Precision Whetstone | 40,644.9 MWIPS | 
41,580.4 MWIPS | 
| Execl Throughput | 3,003.3 lps | 
3,128.1 lps | 
| File Copy 1024 bufsize 2000 maxblocks | 1,011,491.1 KBps | 
1,335,427.5 KBps | 
| File Copy 256 bufsize 500 maxblocks | 319,984.0 KBps | 
340,135.7 KBps | 
| File Copy 4096 bufsize 8000 maxblocks | 3,380,723.8 KBps | 
3,226,794.4 KBps | 
| Pipe Throughput | 2,555,341.5 lps | 
2,298,812.0 lps | 
| Pipe-based Context Switching | 489,466.3 lps | 
496,375.9 lps | 
| Process Creation | 9,509.1 lps | 
10,750.8 lps | 
| Shell Scripts (1 concurrent) | 11,686.3 lpm | 
11,584.9 lpm | 
| Shell Scripts (8 concurrent) | 1,543.7 lpm | 
1,635.2 lpm | 
| System Call Overhead | 1,884,388.0 lps | 
2,329,638.8 lps | 
まとめ
いかがでしたでしょうか。思ったより性能ダウンしていないというのが確認できたと思います。ブラウジングは同等、シングルCPUは25.94%の性能ダウン、普段使いのマルチCPUの性能は変わらない評価でした。
シングルCPUの性能は影響を受けています。これはマルチスレッドに対応していないプログラムや1つの処理が重いアプリは、影響を受けやすい可能性があります。お使いのアプリによってはあれ?こんな遅かったかなぁ?となるかもしれません。
  
  
  
  
