第12世代CoreでLinuxのSpectre・Meltdown対策パッチを無効化する意味はない 44
ストーリー by nagazou
デフォでよし 部門より
デフォでよし 部門より
LinuxではSpectreやMeltdown問題の対策として脆弱性対策を無効化するオプションパラメーターが存在している。2018年以前のインテル製CPUでは、SpectreやMeltdown対策は行われていないが、一部のLinuxユーザーはこの「mitigations=off」オプションをつけて起動することで、パフォーマンスを向上させていたという。この行為はセキュリティ上のリスクを伴うものだが、前世代のIntel CPUであれば測定可能な明確な性能差が出ることも分かっていたという(Phoronix)。
しかし、11月に発売された第12世代Core プロセッサ(Alder Lake-S)でもこのオプションを利用する意味があるのだろうか。Phoronixに掲載された記事では、その疑問に答えるためにオプションの有効・無効化によるパフォーマンスの差を調査している。Intel Core i9 12900K(Alder Lake-S)を搭載したシステムにUbuntu 21.10(Linuxカーネル5.15)をインストールした環境でテストが行われている。
それぞれのテスト内容やテスト項目に関しては元記事を見ていただきたいが、結論としてはIntel Core i9 12900K環境では「mitigations = off」の有無による差は、全体的にごくわずかなものだった。記事ではAlder Lake環境であれば、「mitigations = off」オプションを変更する価値はないと結論づけている。
しかし、11月に発売された第12世代Core プロセッサ(Alder Lake-S)でもこのオプションを利用する意味があるのだろうか。Phoronixに掲載された記事では、その疑問に答えるためにオプションの有効・無効化によるパフォーマンスの差を調査している。Intel Core i9 12900K(Alder Lake-S)を搭載したシステムにUbuntu 21.10(Linuxカーネル5.15)をインストールした環境でテストが行われている。
それぞれのテスト内容やテスト項目に関しては元記事を見ていただきたいが、結論としてはIntel Core i9 12900K環境では「mitigations = off」の有無による差は、全体的にごくわずかなものだった。記事ではAlder Lake環境であれば、「mitigations = off」オプションを変更する価値はないと結論づけている。
意味はなくても (スコア:1)
sync; sync; sync
Re:意味はなくても (スコア:2)
STOPキー連打・・・は20世紀までか。
Re: (スコア:0)
やってます…。
※ 仮想マシンですら、ついやってしまう。
Re:意味はなくても (スコア:1)
1つ目の sync は,キャッシュをディスクに書き込むため。
2つ目の sync は,1つ目の sync が非同期的に実行されたときに wait するため。
3つ目の sync は,念のため。
Re: (スコア:0)
1つ目の sync は,キャッシュをディスクに書き込むため。
2つ目の sync は,1つ目の sync が非同期的に実行されたときに wait するため。
3つ目の sync は,念のため。
艱難辛苦の語源である(嘘
Re: (スコア:0)
なるほど、保存用、布教用、観賞用の順ってことか。
Re: (スコア:0)
ヨシ!
ヨシ!
ヨシ!
↑こうすると途端に不安になる…
Re: (スコア:0)
私もやってます。GUIからのシャトダウンが心配なのでコンソールを開いてsync^3してから落としてます。
今はほんとに意味ないの?
Re: (スコア:0)
GUIからのシャトダウン、というか、正規ルートでのシャットダウンに不安があるのに、ユーザー操作可能な状況(他のプロセスが、いくらでも更新できるので何の意味もない)での syncをやって安心するってほうが、おかしくない?
Re: (スコア:0)
仮想マシンをshutdownした後、ホストでもやる
最近発売されたプロセッサーでも対策が必要なのか (スコア:0)
パッチによる性能どうこうではなくパッチなんか不要だよになってないのがなんとも
Re: (スコア:0)
ハードウェアで完璧に対応しているかは追っていないので不明ですが、そもそも Linux の考え方としてハードウェア(あるいは Intel)をそこまで信用していないのかと
参考:Linuxに対し米当局がバックドアを仕掛けたとされるIvyBridgeの乱数生成命令を使うなという要望、Linusキレる [srad.jp]
あと元々の問題が高速化のための投機実行およびキャッシュに起因しているので、ハードウェアで完璧に対応するよりハードウェア+ソフトウェアで対応する方が速度的に有利、とかないかなぁ
Re: (スコア:0)
あと「対策済みCPUなら無効化するもの」という認識が広がると、対策済みでないマシンでもうっかり無効化した状態でセットアップしてしまう例が多発することも予想できる
くらいにはマシン管理者を信用してない方が安全かもね。
Re: (スコア:0)
普通はCPUIDみて自動適用でしょ?
一般的な使用方法ではユーザーが決めることはないかと
もちろんLinuxでもWindowsでも
Re: (スコア:0)
ユーザーが手動で無効化オプションを設定するという話題なのに「自動適用でしょ?」って何が言いたいのか理解できないです。
Re: (スコア:0)
嫌なら全く新しいCPUを発明してもいいんだぞってレベルの話だからね
出た頃から頭のいい人達が直らないぞって言ってた通り
Re: (スコア:0)
つVLIW
Re: (スコア:0)
結局流行らなかったね
コンパイル技術が足りなかったのか動的に変化する状況への対応力が足りなかったのか
Re:最近発売されたプロセッサーでも対策が必要なのか (スコア:1)
流行らなかったって事は筋悪で遅いってこった
Re: (スコア:0)
単純に、ISAにプロセッサの構成が反映されてると高性能化の妨げになるんすよ
Re: (スコア:0)
毎度ISAごと変えてコンパイルしなおす想定なら
Re:最近発売されたプロセッサーでも対策が必要なのか (スコア:1)
Re: (スコア:0)
VLIWが悪かったというより、スーパースカラの改良に負けたってところじゃないかな。
VLIWが得意なところはSIMD命令の方がもっと高効率。
投機実行で並列度を上げて、分岐予測ミスも技術革新でどんどん減らした。
結果的にVLIWの利点が何もなくなってしまった。
Re: (スコア:0)
CPUのトランジスタ数によって効率的な命令セットは変わる
数百万トランジスタではRISCが最適、数千万トランジスタではVLIWが最適、
数億トランジスタ超になって、CISC・RISC・SIMDのいいとこどりをしたようなのが最適になった
どういう原理? (スコア:0)
システムコール毎に余分な処理してるのに、ほぼ速度変わらないってどういう原理なんだろう。
一部の対策が不要になったからとかなら分かるんだけど。
Re:どういう原理? (スコア:3, 参考になる)
出鱈目なコメントばっかりなので、正解をかいておく。
まず今のカーネルはCPUの種類を調べて、脆弱性の有無で動作を切り替えている。
脆弱性があれば、処理は重くなるけど安全なルーチンを使い、
脆弱性がなければ、処理が軽いルーチンを使う。
そして mitigations=off オプションを指定すると、脆弱性の有無を無視して、処理が軽いルーチンが常に選ばれるようになる。
具体的な動作は次のようになる。
まず脆弱性が大量にある古いCPUを使っている場合:
mitigations=off オプションなしの場合。脆弱性がたくさんあるので、重いルーチンが多数使われる。結果、激重になる。
mitigations=off オプションありの場合。全部軽いルーチンに切り替わるので、劇的にパフォーマンスがあがる。(当然セキュリティーホールだらけになる)
次に脆弱性が少ないCPUを使っている場合:
mitigations=off オプションなしの場合。そもそも脆弱性が少ないので、重いルーチンはあまり使われてない。だから少しだけ重くなる。
mitigations=off オプションありの場合。少しだけ軽いルーチンに切り替わるから、少しだけ軽くなる。
このような動作になるので、CPUが新しくなって脆弱性が少なくなるほど、「mitigations = off」の有無による差は小さくなります。
Re: (スコア:0)
使用コアがビッグリトル運用の副作用で多用ユーザプロセスとカーネルごく自然に別々に割り当てられてるんでしょ
ARMのAndroidやApple系OSが現状どうなってんのかは知らんけど
Re: (スコア:0)
なるほど。
そこまで考えて、spectre系直さなくてもBigLittleで行けば解決すると判断して路線変更(?)したらな、Intelすごいなと思う。
Re: (スコア:0)
決まった命令パターンに最適化して、投機実行しておくとかでは。
Re: (スコア:0)
SpectreやMeltdownに繋がる
特定命令パターンを避けてはいるだろうね
今回追加されたハードウェアスケジューラがそこらへん上手くやってるんだろ
Atomコアを元にしてるEコアを上手く使って投機実行させないとか
カーネルとユーザーランドを分離させたりと色々対策してあって
ソフトウェアの対策とコスト的な差がそんなに無いとか
そんな感じじゃないかな
mitigations=off (スコア:0)
Ivyおじさんなので設定してます。目に見えるほどは違いませんけどね。
Re: (スコア:0)
小さい字が見えずらくなりまして...
ネットから隔離しないのに無効化するのか… (スコア:0)
意識低い系?
Re: (スコア:0)
ブラウザなんて走らせないサーバーで、信頼できるプログラムしか使ってないなら、対策なんていらないやん。
覗き見するプログラムが走り出した時点で負け。
Re: (スコア:0)
これだけ大々的に対処されてしまうと攻撃する側もあまり成功が期待出来ないから、対策の無効化してもさして影響がないかもしれないなーとは思う
Re: (スコア:0)
この件についてはあんだけ大騒ぎして実害0だしな
0リスク主義者は大変だわ
Re: (スコア:0)
大騒ぎして短期間で対策したから被害が少なかったんだと思うが。
あと実害0はどうやって判断したのさ?
痕跡を残さずにデータをこっそり読みだせるという、CPUのバグなんだから被害には気づかないのだが。
だから厄介なんだよ。
Re: (スコア:0)
当初からまともなexploitコード出てこなくて、使いようが無いって散々言われてたよね?
無かった悪魔の証明なんかできないんだから、実害合ったなら合ったと実例示して貰わないとね。
そもそもだれも気づいてないなら実害無かったで良いのよ。
とはいえ政府国防系とか金融系とか、ゼロリスクを求められる分野が有るのはわかるが、
「高性能モード」「高信頼モード」とかに分けて実施して欲しかったところだ。
コンシューマ向けなんか全くやる必要なかった。
Re: (スコア:0)
ホスト:有効
ゲスト:無効
ってのは二重負荷避けに有り得なくもない
# VPSでは両方有効じゃないと怖いけど
Re: (スコア:0)
意識高い系は意識高い人を真似ただけの意識高くない人のことだから、意識低い系は意識低くない
と思うんだ
Re: (スコア:0)
つまり力があれば独善上等とな
Re: (スコア:0)
強ければそれでいいんだ……
力さえあればいいんだ……
Re: (スコア:0)
このサイトは何も生み出してないんだからLinuxに失礼だろ。