アカウント名:
パスワード:
サーバ用途ではHyper-Threadingで性能がむしろ低下することもあるので必ずしもマイナスではないのでは
ここでもそういった議論あったし、検索すればそういった事例もいろいろhttps://srad.jp/comment/1402115 [srad.jp]
このストーリーで紹介されているMicrosoftの記事は面白いですね。https://technet.microsoft.com/ja-jp/library/cc137784.aspx [microsoft.com]
とはいえ、記事では物理コアあたりのコンテキストスイッチが多すぎるのが性能悪化の原因と記載されています。CPUとI/Oの両方が高負荷になるソフトウェア(RDBMS)において、実行時にコア数を考慮した高度な最適化が施されている場合に、論理コア数に基づいて最適化が行われたために、コンテキストスイッチが過度に増加して性能悪化につながった事例のように見えます。
基本的には過渡期の現象で、物理コアを意識した最適化を実装すれば回避できる性能低下に思えました。
ハイパースレッディングって論理コアにすることでコンテキストスイッチ減らす技術かと思ったけどぜんぜん違うのね。コンテキストスイッチが発生するならOSのスケジューラがやっても同じじゃないか…。
> ハイパースレッディングって論理コアにすることでコンテキストスイッチ減らす技術かと思ったけどぜんぜん違うのね。
違いますね。OoO用のハードウェア資源は常に100%使いきってるわけではなく遊んでいる演算器その他がたいてい存在するので、仮想的なスレッドを増やして、遊んでるハードウェアを使い尽くしてその分だけ性能を上げてやろうという技術です。ただしスレッドを増やすとメモリフットプリントは増加するので、ボトルネックがキャッシュ容量やメモリバンド幅だった場合には、かえって性能が低下すると。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
私はプログラマです。1040 formに私の職業としてそう書いています -- Ken Thompson
Hyper-Threadingと性能 (スコア:2, 興味深い)
サーバ用途ではHyper-Threadingで性能がむしろ低下することもあるので必ずしもマイナスではないのでは
ここでもそういった議論あったし、検索すればそういった事例もいろいろ
https://srad.jp/comment/1402115 [srad.jp]
Re: (スコア:1)
このストーリーで紹介されているMicrosoftの記事は面白いですね。
https://technet.microsoft.com/ja-jp/library/cc137784.aspx [microsoft.com]
とはいえ、記事では物理コアあたりのコンテキストスイッチが多すぎるのが性能悪化の原因と記載されています。
CPUとI/Oの両方が高負荷になるソフトウェア(RDBMS)において、実行時にコア数を考慮した高度な最適化が施されている場合に、
論理コア数に基づいて最適化が行われたために、コンテキストスイッチが過度に増加して性能悪化につながった事例のように見えます。
基本的には過渡期の現象で、物理コアを意識した最適化を実装すれば回避できる性能低下に思えました。
Re: (スコア:0)
ハイパースレッディングって論理コアにすることでコンテキストスイッチ減らす技術かと思ったけどぜんぜん違うのね。
コンテキストスイッチが発生するならOSのスケジューラがやっても同じじゃないか…。
Re:Hyper-Threadingと性能 (スコア:0)
> ハイパースレッディングって論理コアにすることでコンテキストスイッチ減らす技術かと思ったけどぜんぜん違うのね。
違いますね。
OoO用のハードウェア資源は常に100%使いきってるわけではなく遊んでいる演算器その他がたいてい存在するので、
仮想的なスレッドを増やして、遊んでるハードウェアを使い尽くしてその分だけ性能を上げてやろうという技術です。
ただしスレッドを増やすとメモリフットプリントは増加するので、ボトルネックがキャッシュ容量やメモリバンド幅
だった場合には、かえって性能が低下すると。