IT用語集 › ハードウェア › SMTスレッド

SMTスレッド

ハードウェア Svenska → 更新: 2026-10-23

同時マルチスレッディング(SMT、IntelではHyper-Threading)が作る論理スレッド。1つの物理コアが実行ユニットを共有して複数の命令列を同時に走らせ、スレッドの待ち時間で遊んでしまう資源を使い切る。

仕組みはこうだ。アウトオブオーダーコアには多数の実行ユニットがあるが、単一スレッドがそのすべてを埋め続けることはまずない(キャッシュミスや依存関係で止まる)。SMTは2つ目(以上)のスレッドにその隙間を埋めさせる。レジスタやプログラムカウンタといったアーキテクチャ状態は複製し、高価な実行資源は共有する。スレッドAがメモリを待つ間にスレッドBが空いたユニットで動けるので、コアあたりの総スループットは(2スレッドで通常15〜30%)向上する。OSは各SMTスレッドを「論理コア」として扱う。代償として、2つのスレッドはキャッシュや実行ユニットを奪い合い(重いスレッド1本のほうが隣人がいると遅くなることもある)、共有はサイドチャネル攻撃の入口にもなったため、セキュリティ上の理由でSMTを無効にする運用もある。

← 用語集に戻る