2020/05/23 03:50
a2ikm
“Ruby on Railsを使ったWebアプリは多くの場合IOやGCが律速になっているので、Spectre対策を止めても観測できるほどの速度向上はしないでしょう(たぶん)”
2020/05/23 07:31
iga_k
調査と理由への到達すごい
2020/05/23 07:49
el-condor
Pythonだとdockerで動いてるCPU律速なコードはボチボチありそうだよね。
2020/05/23 08:15
Nyoho
Spectre対策の影響だったのか〜
2020/05/23 08:21
kazuhooku
hyperthreading有効なcpuだけの話なんやろか
2020/05/23 08:26
mkusunok
Dockerで動かす=マルチテナントって想定は間違ってない気がするし、これは仕方ないんじゃないかな。Spectre脆弱性が見つかったときには世界が終わらんとするような騒がれ方だったけど、実際ジワジワと蝕んでいるのね
2020/05/23 08:32
enemyoffreedom
AMDのCPUだとSpectre対策のペナルティも軽めだったりするのかね
2020/05/23 09:00
yujiorama
分岐予測の多さが影響を受けやすくする要因。Rubyは将来解消されるかもしれない
2020/05/23 09:02
jt_noSke
ど(そ)っかー
2020/05/23 09:15
airj12
Spectre脆弱性対策で遅くなるとは聞いてたけどインタプリタ言語は顕著なのね
2020/05/23 09:16
taruhachi
げ。覚えとこう。
2020/05/23 09:21
koemu
CPUの脆弱性対策の結果、遅くなる事例がわかって参考になる。
2020/05/23 09:30
programmablekinoko
フーム、docker独自の対策って何やろ / 素のLinuxではに無効してる分岐予測抑制がdockerだと有効になるってことね
2020/05/23 09:37
ledsun
Twitterやslackで、まったく意味不明の現象がすごいスピードで原因特定されていくのを、ポカーンと見ていました。
2020/05/23 09:39
typex2
まず「CPU律速」という「律速」の言葉の意味が不明。Spectre攻撃対策の処理がボトルネックになっているのでそれを無効すれば改善されるって当たり前。。
2020/05/23 09:49
tinsep19
競プロのジャッジdockerで動かすとはまりそう。atcoderでrubyが遅くなったの、関係しないかな?2.7になって時間かかるようになったし。
2020/05/23 10:01
reitanigawa
ああ、遅いんだなという実感しか持っていなかった……
2020/05/23 10:15
ebo-c
流石は007界有数の秘密組織。全世界に迷惑かけてくれる
2020/05/23 10:20
kompiro
コンテナで有効になるカーネルスイッチ整理したい
2020/05/23 10:54
inductor
seccompのこともっとちゃんと勉強しようって気持ちになる面白い流れだった。
2020/05/23 11:03
peketamin
goにしますか…
2020/05/23 11:22
lizy
CPUバウンド?なものをdockerで動かす際にパフォーマンスに影響が出るらしい
2020/05/23 11:34
Yuzu
「CPU律速」の意味がわからなかったけど、律速=ボトルネックのことか。勉強になった
2020/05/23 11:50
fa11enprince
最近まれに律速って表現見るようになったけど一般的なのかな?CPUバウンドはそこそこ見るんだけども。誰か教えてー
2020/05/23 11:54
gowithyou
Ryzenだとどうなんだろうね?
2020/05/23 12:09
wazly
id:fa11enprince 化学反応で目的の生成物を得るために多段階の反応プロセスを経る場合にどの反応が一番遅くて足を引っ張っているかという文脈で使われるのが由来。「CPUがボトルネックになっている〜」→「CPU律速な」
2020/05/23 12:39
MonMonMon
よく辿りつくなぁ感心だわな
2020/05/23 12:40
sho
rubyでCPU律速な用途は少なめかな。pythonはけっこうありそう。
2020/05/23 13:05
fhvbwx
CPU律速がクリティカルになるプログラムをRuby/Pythonで書くのが間違ってると思うのですが。
2020/05/23 13:24
nilab
「dockerはデフォルトでセキュリティ機構(Spectre脆弱性の対策)を有効にします。この影響で、RubyやPythonのようなインタプリタは速度が劣化します」
2020/05/23 13:36
ryunosinfx
Spectreの脆弱性発生がCPU種類依存だから、CPU変えたら速度も変わるってことでいいの?こうIntelの第八世代では激遅だけど第十世代では殆ど差がないとかRyzenだったら何ですかそれは?だとか。クラウドのCPU種別が意味を持つ
2020/05/23 13:39
h3poteto
これは納得,だがどうすることもできないな
2020/05/23 13:41
natu3kan
Spectre脆弱性の対策の都合でCPUが律速(ボトルネック)になると。
2020/05/23 13:51
t-cyrill
なるほどだが回避方法はなさそう
2020/05/23 14:13
ryuichi1208
Spectre脆弱性の対策はDocker関係なく性能劣化には繋がって顕著に出るのがDockerって訳ではないのかな?
2020/05/23 14:36
igni3
むしろセキュリティ無視していい使い方ならdockerでもCPU律速ではなくなることに驚いた。(IO律速の懸念は残るけど
2020/05/23 14:36
taku-o
押すな押すな、みたいだな。
2020/05/23 15:56
mongrelP
Zen系でもある程度影響はあるはずだがどのくらいなんだろうか。IOはだいぶ差があるようだが。
2020/05/23 16:00
Dragoonriders
ボトルネックって書け/どのようなシステムか、どのような計算が必要かわからんので一概に言えないけど、コンテナ上でインタプリタで1億回のループが必要な設計ってのが、まず、それどうなのよ、とか思った。
2020/05/23 16:11
knok
いかんせん攻撃を検知できないので実際にどれくらい使われてるかの実態を把握するのが困難そうなのがやっかい
2020/05/23 16:27
naka-06_18
Ruby界隈の人のはずなのにわざわざPythonも。複雑だ。
2020/05/23 16:35
p1ass
知らなかった
2020/05/23 17:41
ys0000
“seccomp”なるほど。確認する必要があるな、これは。
2020/05/23 18:48
pmonty
ありがとうございます/タイムリーに nvidia-docker2 導入準備していたところなので 自分のようなローカルでの機械学習用途なら --security-opt seccomp=unconfined で良さそう。
2020/05/23 19:40
daishi_n
問題解決がBIOSのマイクロコードだけでなく、ソフトウェアが個別に対応、かつ高速化機能の無効化。仮想化系のソフトは大影響。IntelはP6からCometまで増築温泉旅館状態なので新アーキで整理しないと無理だろう
2020/05/23 21:49
punychan
うーん、高校化学で律速ならうよね。
2020/05/23 22:12
inoueyuworks
spectre 脆弱性対策が on になっている linux では、 CPU が遅くなる。 docker はデフォルトでそれが on になっている。
2020/05/23 23:54
takashi_kun
この辺りの話が出てきたおかげで、低レイヤの勉強をするきっかけになったので個人的に感謝してる
2020/05/24 07:20
pascal256
DockerはディスクIOは遅くなるけどCPU劣化はほぼ無いと思ってたから認識直さないとなー
2020/05/24 09:35
skomma
メモメモ
2020/05/24 17:48
joker1007
こんなに影響あるのか。めっちゃCPUで律速してるJavaアプリケーションがコンテナで動いてるんだが、どうしたもんかな。
2020/05/24 18:31
miluru
思ったより悪化してた。実際は他の要因で薄まるとはいえ馬鹿にできないなぁ。
2020/05/25 15:52
Haaaa_N
IOはともかくGCも相当遅くなりそうな気がする
2020/05/26 09:56
sonots
kubernetes だと seccomp はまだ alpha でデフォルトは unconfined のようだ kubernetes.io