IT業界を根幹から揺るがした脆弱性「Spectre」「Meltdown」はCPUのパフォーマンスにどんな爪痕を残したのか?

by laboratorio linux
2018年初頭に明らかになったCPUの脆弱(ぜいじゃく)性である「Spectre」と「Meltdown」は、当時主流だった大半のCPUの設計に根差した深刻な問題だったため、IT業界全体が対応を迫られるなど大きな混乱をもたらしました。この2つの脆弱性がCPUのパフォーマンスに残した影響を、Linux関連のニュースサイトPhoronixが徹底的なベンチマーク測定で浮き彫りにしています。
A Look At The CPU Security Mitigation Costs Three Years After Spectre/Meltdown - Phoronix
https://www.phoronix.com/scan.php?page=article&item=3-years-specmelt
3 Years CPU Security Mitigations Performance - OpenBenchmarking.org
https://openbenchmarking.org/result/2101067-HA-MITIGATIO26
「Spectre」と「Meltdown」は、いずれもCPUの高速化に関する手法が原因だったことから、問題が判明した際には「すべてのプロセッサが安全性と高速性を両立できない問題を抱える」と指摘されました。
Intel製CPUに内在する脆弱性問題の根は深く「すべてのプロセッサが安全性と高速性を両立できない問題を抱える」との指摘 - GIGAZINE

この脆弱性が発見されてから3年目の節目を迎えたため、PhoronixはIntelとAMDのCPUでさまざまなベンチマークテストを実行し、両社がCPUに施したセキュリティ対策がパフォーマンスに与えている影響を調べることにしました。今回、Phoronixがベンチマークテストを実施したCPUは以下の計11点です。
・Intel
Core i7 4770K
Core i7 5775C
Core i7 7700K
Core i7 8700K
Core i9 9900K
Core i9 10900K
Core i9 10980XE
・AMD
Ryzen 7 1800X
Ryzen 9 3950X
Ryzen Threadripper 3970X
Ryzen 9 5950X
CPUのテスト環境には、Ubuntu 20.10と記事作成時点で最新のLinuxカーネルであるLinux 5.10を使用。セキュリティ対策が有効なデフォルトの状態と、セキュリティ対策を無効にした状態の2回に分けてベンチマークテストを実行し、その結果をCPUごとにまとめました。
◆ブラウザ(Mozilla Firefox)
Phoronixによると、セキュリティ対策の影響がもっとも顕著に現れるのがブラウザのパフォーマンスだとのこと。そこでPhoronixは、まずFirefox 84でJavaScriptの機能の実行時間や処理能力を測定するベンチマークを実施しました。
「ARES-6」はJavaScriptベースのベンチマークで、各棒グラフのうち赤色がセキュリティ対策が有効なデフォルトの状態を、青色がセキュリティ対策を無効にした状態(mitigations=off)の結果を表しており、数値が低いほど優秀な成績であることを示しています。なお、画像をクリックすると拡大表示できます。

「Kraken」はMozillaが開発したJavaScriptのベンチマーク。数値が低いほど優秀です。

「Octane」はGoogleが開発したJavaScriptのベンチマーク。数値が高いほど優秀です。

「JetStream」はAppleのWebKitチームが開発したJavaScriptのベンチマーク。数値が高いほど優秀です。

「JetStream 2」はJetStreamの後継のベンチマーク。数値が高いほど優秀です。

「Speedometer」はAppleが開発した、Webアプリケーションの反応性を図るベンチマーク。数値が高いほど優秀です。

Phoronixは「すべてのCPUでパフォーマンスの低下が見られましたが、ハードウェアの見直しが行われていない古いCPUでは特に影響が顕著でした」と指摘しています。
◆ブラウザ(Google Chrome)
Chrome 87でも、同様のベンチマークがテストされました。なお、「JetStream」は除外されています。
「ARES-6」

「Kraken」

「Octane」

「JetStream 2」

「Speedometer」

Chromeでは全体的にFirefoxより良好なパフォーマンスが示される傾向がありましたが、Firefoxと同様に古いCPUではかなりパフォーマンスへの影響が色濃く出たと、Phoronixは述べています。
◆暗号化/復号
Phoronixは次に、Linuxのディスク暗号化システムであるCryptsetupを用いたベンチマークテストを実施しました。
まず256ビットでの暗号化速度のテスト結果が以下。単位はメビバイト毎秒で、数値が高いほど優秀です。

続いて復号の結果が以下。

同様に、512ビットでの暗号化と……

復号の結果がこれ。

Phoronixは、「古いIntel製CPUとテストに使用した全てのAMD製CPUでは、カーネルドライバの改善により、少なくともAES-XTS形式の暗号化アルゴリズムにおけるパフォーマンスが良い結果となる傾向がありました」と述べました。
また、コードのコンパイルにかかる時間は古いCPUモデル以外ではほとんど違いが見られませんでした。

◆入出力
「PostMark 1.51」を用いたトランザクション処理速度のテスト結果が以下。数値が高いほど優秀なことを示しています。

Phoronixは「入出力においては、性能の低下対策機能であるRetpolinesで急場をしのいだ古いIntel製CPUを中心に、パフォーマンスの低下が発生しがちという結果でした。一方、Comet Lakeなどを搭載した新しいIntel製CPUではわずかなオーバーヘッドの増加しか見受けられません」と述べています。
また以下は、Go言語で記述されたネットワークパフォーマンス測定ツール「Ethr」を使ったデータ転送速度のテスト結果で、数値が高いほど優秀なことを示しています。

同じくネットワークのベンチマークツールである「Sockperf」を用いたスループットのテスト結果(数値が高いほど優秀)と……

レイテンシのテスト結果(数値が低いほど優秀)が以下。Phoronixは「新しいCPUであっても、セキュリティ対策の有無で大きな違いが出るという結果となりました」とコメントしました。

◆AI性能
続いて行われたのは、アリババが開発したモバイル向けディープラーニング推論エンジンである「Mobile Neural Network(MNN)」を用いたベンチマークテストです。テストは以下の4種の深層学習モデルで行われました。なお、全て数値が低いほど優秀であることを示しています。
「SqueezeNet」




この結果についてPhoronixは「セキュリティ対策がMNNのパフォーマンスにも影響を与えていることが分かりましたが、幸いにもハードウェアに対策が盛り込まれている新しいCPUでは違いがありませんでした」とコメントしました。
◆まとめ
Phoronixが実施した全てのテストの結果を総合的に加味した結果のグラフが以下で、数値が高いほど優秀なことを意味しています。

Phoronixは、今回のベンチマークテストの結果について「IntelのCPUを見ると、Core i7 7700Kと8700Kはセキュリティ対策により約75%まで性能が落ちていますが、ハードウェアでの対策が組み込まれたCore i9 10900Kでは、約95%以上までパフォーマンスが維持されているのが分かります。またAMDでは、Zen 3アーキテクチャの強力な保護機能がオーバーヘッドを増加させているため、テストした中で最新のRyzen 9 5950Xでもパフォーマンスが約90%まで落ちました。とはいえ、幸いにもAMD Zen 3のCPUは極めて高速なので、例の脆弱性が明らかとなった2018年1月に予想された性能低下に比べれば最小限度といえます」と結論付けました。
・関連記事
CPUの脆弱性「Meltdown」対策の2018年1月と2月のWindows用パッチは別の事態悪化を招く可能性 - GIGAZINE
Intelが脆弱性「Spectre」「Meltdown」をハードウェアレベルで対策したCPUを2018年後半にリリースすると発表 - GIGAZINE
CPUの脆弱性問題への修正パッチが実質的なCPUパフォーマンスに与える影響とは? - GIGAZINE
Intel製CPUに内在する脆弱性問題の根は深く「すべてのプロセッサが安全性と高速性を両立できない問題を抱える」との指摘 - GIGAZINE
Intel製CPUの「修正済み」脆弱性が実は修正不可能であったことが判明、特権によるコード実行やDRMの回避などが可能 - GIGAZINE
CPUに内在する脆弱性問題「メルトダウン」「スペクター」への各社の対応まとめ - GIGAZINE
Intel製CPUに新たな脆弱性「LVI」が判明、個人情報や企業の機密情報が流出する可能性も - GIGAZINE
IntelのCPUに新たな8つの脆弱性が発見される、内4つは「高い危険性」との評価 - GIGAZINE
Intel製CPUに見つかった新たな脆弱性「SPOILER」はまたもシリコンレベルでの再設計による修正が必要 - GIGAZINE
・関連コンテンツ
in ソフトウェア, ハードウェア, セキュリティ, Posted by log1l_ks
You can read the machine translated English article What kind of scars did the vulnerabiliti….