パスワードを忘れた? アカウント作成
13631305 story
BSD

OpenBSD、セキュリティ確保のためIntel CPUのハイパースレッディングをデフォルトで無効化 58

ストーリー by hylom
守りに寄せる 部門より
あるAnonymous Coward曰く、

OpenBSDがamd64アーキテクチャにおいてIntelプロセッサのHyper-Threading機能をデフォルトで無効にしたそうだ(マイナビBleeping ComputerSlashdot)。

この変更は6月19日のコミットで行われたもの。CPUの投機的実行機能にまつわる脆弱性問題に対応するためにデフォルトでハイパースレッディング機能を無効にすると説明している。

  • by Anonymous Coward on 2018年06月26日 9時50分 (#3432216)

    OpenBSD の話なのになんでパフォーマンスがどうとか言ってるの?

    昔の OpenBSD はインストーラーが最初に「インストールを開始しますか(y/[N])?」って
    聞いてきて、メッセージをちゃんと読まない僕みたいな不注意シス管は
    そのまま enter を押して強制的に反省させられる仕組みだったぐらいには
    意地悪設計^H^H^H^H^Hあらゆるデフォルトが超安全側に倒されているので
    むしろ今まで HT が on になっていたことに驚きです。

    ここに返信
    • by Anonymous Coward

      バカには使わせない、それがOpenBSD。

    • by Anonymous Coward

      海原雄山が至高のOSでウェブを見ながら遅いのにイライラして「愚民どもに計算機を与えるな!」と当り散らしている絵が脳内に浮かんだ。

      # え?OpenBSDでブラウザなんか使う奴が悪い?だって海原雄山ですよ?

    • by Anonymous Coward

      > 超安全側に倒されている

      その例だと安全側じゃないだろう。

      • by Anonymous Coward

        えっ? きちんと読まずにエンターキーを叩いたら、
        消すべきでないディスクにインストールされて
        しまう方が安全だと言うのですか?

        • by Anonymous Coward

          そもそも一番安全なのはEnterキーの押下イベントを無視することだろ。

          安全設計などともっともらしいことを言っているが、Nをわざわざデフォルト選択にしているあたりはゲーム用語でいう「初見殺し」、つまり初心者をひっかけてテオ・デ・ラートがせせら笑う為の仕掛けでしかない。

        • by Anonymous Coward

          不注意な管理者に機密データを公開されるくらいなら消した方が安全ではないか?

        • by Anonymous Coward

          なんか猫が勝手にキーボード触ったみたいで、いつの間にかOSがUbuntuになってて、いやぁあれにはホント参りました。

  • by Anonymous Coward on 2018年06月26日 11時18分 (#3432274)

    サーバ用途ではHyper-Threadingで性能がむしろ低下することもあるので必ずしもマイナスではないのでは

    ここでもそういった議論あったし、検索すればそういった事例もいろいろ
    https://srad.jp/comment/1402115 [srad.jp]

    ここに返信
    • by Anonymous Coward on 2018年06月26日 13時21分 (#3432332)

      このストーリーで紹介されているMicrosoftの記事は面白いですね。
      https://technet.microsoft.com/ja-jp/library/cc137784.aspx [microsoft.com]

      とはいえ、記事では物理コアあたりのコンテキストスイッチが多すぎるのが性能悪化の原因と記載されています。
      CPUとI/Oの両方が高負荷になるソフトウェア(RDBMS)において、実行時にコア数を考慮した高度な最適化が施されている場合に、
      論理コア数に基づいて最適化が行われたために、コンテキストスイッチが過度に増加して性能悪化につながった事例のように見えます。

      基本的には過渡期の現象で、物理コアを意識した最適化を実装すれば回避できる性能低下に思えました。

      • by Anonymous Coward

        ハイパースレッディングって論理コアにすることでコンテキストスイッチ減らす技術かと思ったけどぜんぜん違うのね。
        コンテキストスイッチが発生するならOSのスケジューラがやっても同じじゃないか…。

        • by Anonymous Coward

          それを制御するのがOSのスケジューラなんだからイマイチ意味が通らない。

          CPUバウンドじゃないスレッドを待機させるならHTは有効に働くでしょう。
          CPUバウンドなスレッドが非常に多い場合、論理コア毎にタイムスライスを割り当てるナイーブな
          実装だと物理コアに対して倍のコンテキストスイッチが発生し、計算コアの利用効率向上を上回るオーバーヘッドが生じたって話では?

          コアの共有を意識したスケジューラを実装するのは勿論OSの役目ですし。

    • by Anonymous Coward

      各論理CPUをフル負荷かけた状態を想定すると、メモリバスの衝突なんかでストールしている時間が増えるので、性能低下することがある。特に、CPUのキャッシュに収まらないような処理を大量に実行していれば、その傾向は顕著になる。

  • by ilonasive (6257) on 2018年06月27日 3時43分 (#3432876)

    この対応は現状では -currentブランチに対してなので、Eratta [openbsd.org]にも掲載されてないし、syspatch(8)の対象にもなってない。

    このままだと一般のユーザに関係してくるのは(多分)10月頃にリリースされるOpenBSD 6.4からか。

    -stableブランチにバックポートされれば普段使いのマシンにも適用するんだけど。

    ここに返信
  • by Anonymous Coward on 2018年06月26日 7時34分 (#3432151)

    健康のためなら死んでもいい的な、その姿にあこがれる。

    ここに返信
    • by Anonymous Coward

      Hyper-Threading機能を切ると、それこそキャッシュメモリを無効化する程迄、OS性能は落ちるの?

      • by Anonymous Coward

        そりゃまぁ落ちるでしょうが、コアのリソースを有効に使いましょうという機能だし、
        性能が半減するといったような大幅な低下はないでしょう。
        コアのリソースをスレッドで分け合わなくなるので、シングルスレット性能はあがるかもよ。

      • by Anonymous Coward

        クライアントPCは大したことないけと、BSD使うようなサーバー/ネットワーク機器は20-30%くらい性能が落ちる
        ただでさえLinuxとの性能競争に負けてる中でこれだから、ますますシェアを落とすかも?
        https://www.intel.co.jp/content/dam/www/public/ijkk/jp/ja/documents/de... [intel.co.jp]

      • by Anonymous Coward

        HPCでよく姫野ベンチ使われてるけどHTTオンだと性能が悪いことが多い気がします。

        https://hesonogoma.com/linux/hyper-threading_cpu_performance_test_on_l... [hesonogoma.com]

        デフォでオフ、動かすアプリケーションによってオンにするって運用でいいんじゃないでしょうか?

    • by Anonymous Coward

      さすがOpenBSDは同意だけど
      健康のためなら死んでもいいと皮肉ってるのは同意しないな、つーか死なないし

      HTをOFFにするのとIntel謹製の対策(えらく性能が落ちるというアレ)でどの程度の性能差があるのかな

      • by Anonymous Coward on 2018年06月26日 12時54分 (#3432313)

        謹製警察だ!!おまえを逮捕する!!

      • by Anonymous Coward

        車は事故のリスクがあるから徒歩でしか外出しない、って例える方が近いかな。

        • by Anonymous Coward

          HTのありなしでそこまで極端な差が出るわけでもないしなぁ

        • HTに夢見過ぎでしょw

          --
          IDで恥をかこう!
          • by Anonymous Coward

            徒歩と車ほどではないにせよコア数が同じでHTのないCore-i5との値段の差を見れば、
            HTがどれくらいの価値を持つと思われてるか分かるんでは

            • by Anonymous Coward

              あの価格差は3次キャッシュの容量とクロック上限に対するものかと思ってた。
              ゲーム用途だどHTを切った方がベンチマークのスコアが上がるのは珍しくないですし。

      • by Anonymous Coward

        HTオフの方がターボブーストかかりやすかったりするのでその

        • by Anonymous Coward

          HTでもっさりされるより、クロックアップのほうが体感速度が速そう。

    • by Anonymous Coward

      そんくらいならiAMTってかMEも無効にしてもらいたい。

    • by Anonymous Coward

      ゾンビが長生き健康法をやってるような趣があるよね

  • by Anonymous Coward on 2018年06月26日 8時18分 (#3432168)

    Windowsはどうなんですかねぇ…

    ここに返信
    • by Anonymous Coward

      BSDの比較対象にWindows?

    • by Anonymous Coward

      ターンアラウンドタイムが長くなって操作性が確実に悪化します。
      2000個以上のスレッドが動作していてもおかしくない状態ですので、1秒間に一度も実行されていないスレッドが存在することもざらです。

      • by Anonymous Coward
        HT有効にしたところで2倍になるわけでもなし
        1秒間に一度も実行されていないスレッドが
        1秒間に二度も実行されていないスレッドになるだけでは
        • by Anonymous Coward

          2000スレッドあって、タイムスライスを完全消費していたとすると、40以上の論理プロセッサが無ければ、必ず1秒間に一度も実行されていないスレッドが発生します。
          割り込みなどの処理もありますので、論理プロセッサが多ければ多いに越したことはない。

          • by Anonymous Coward

            必ず1秒間に一度も実行されていないスレッドが発生します

            そりゃ普通にあるでしょう。問題はそれによる影響がどの程度あるかってことです。
            優先順位が低いため後回しにされるスレッドがあること自体は当たり前ですから。

      • by Anonymous Coward

        生成されたスレッドは2000個以上かもしれませんが
        アクティブ(動作可能)なスレッドがそれだけ同時に存在するのは稀では?

  • by Anonymous Coward on 2018年06月26日 11時06分 (#3432264)

    4C4Tのi5大勝利

    ここに返信
  • by Anonymous Coward on 2018年06月26日 14時25分 (#3432362)

    HTは共有部分のあるなんちゃってマルチコアなのでセキュリティ面での不安をあげていた人がいたが
    やっぱりあるのね

    ここに返信
  • by Anonymous Coward on 2018年06月26日 14時44分 (#3432368)

    Pen4 / HyperThreading 導入とともに「必ず使え」と言われていた PAUSE 命令が
    Skylake で使い物にならない実装に落ち込んだしな

    多コア CPU 上に多数のスレッドをぶん回すことが当たり前になった時代、セコセコ技術は引退ということだ。

    ここに返信
  • by Anonymous Coward on 2018年06月26日 19時17分 (#3432631)

    AWSでもHTはオフにしつつあるそうですね。
    あちらは純粋にパフォーマンス管理の都合で、のようですが。

    ここに返信
typodupeerror

アレゲはアレゲ以上のなにものでもなさげ -- アレゲ研究家

読み込み中...