アカウント名:
パスワード:
IA64にどうやって HT(Hyper Threading)を付け足すのか興味がある.
Pentium4は,スーパースケーラのアーキテクチャを取っているので,実行時に使用されるリソースが動的に決定される.だから,Pentium4に HTを実装ときに,アーキテクチャとの親和性が高いのはわかる.
IA64は VLIWのアーキテクチャだから,実行前にリソースの割り当てが決定されている.1つの命令ユニットにパックされたいくつかのopは,かならず同時に実行するはず.そういう前提で HTを実装すると,各リソースごとではなく,命令ユニットごとのスケジューリングにならないだろ
Hyper Threadingで,複数のスレッドを処理するメリットは,「空いている実行リソースを使うこと」であり,そういう意味で,コストパフォーマンスがよくなるわけです.
ILP(Instruction Level Parallelism)を利用することで,平均して並列度1.5から1.8程度の実行効率が得られますが,ILPのみでは行き詰まっており,TLP(Thread Level Parallelism)が利用されることになったという経緯があります.
たとえば,Athlonはスーパースケーラ(ILP)で,並列度3の実行に耐えられるようにできていますが,実際は並列度1.5程度の実行効率しか得られていません.しかし,スレッド数2のTLPを利用することで,おそらく並列度2を上回る実行効率が得られると思います.
ここで,あらかじめ並列度6を許容する実行リソースを用意して,スレッド数4の TLPを利用することを考えるわけです.こうすることで,実行リソースは元の2倍でありながら,おそらく並列度4以上の実行効率が得られると思います.
そうすると,元のリソースの 2倍と少しのリソースで,少なくとも3倍弱の実行効率が得られるわけです.これから,半導体の製造プロセスが微細化していくでしょうが,キャッシュメモリばかり増やしていっても,それほどパフォーマンスは上がりません.現状でも,CPUダイ上でキャッシュメモリの占めるリソースの割合はかなり大きいのです.
ですから,これからの CPUは ILPだけではなく,TLPを考慮に入れ,そのスレッド数を増やすことで,パフォーマンスとコストパフォーマンスの両面で改善が進められていくと思うわけです.
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
長期的な見通しやビジョンはあえて持たないようにしてる -- Linus Torvalds
CPUの未来 (スコア:3, 興味深い)
IA64にどうやって HT(Hyper Threading)を付け足すのか興味がある.
Pentium4は,スーパースケーラのアーキテクチャを取っているので,実行時に使用されるリソースが動的に決定される.だから,Pentium4に HTを実装ときに,アーキテクチャとの親和性が高いのはわかる.
IA64は VLIWのアーキテクチャだから,実行前にリソースの割り当てが決定されている.1つの命令ユニットにパックされたいくつかのopは,かならず同時に実行するはず.そういう前提で HTを実装すると,各リソースごとではなく,命令ユニットごとのスケジューリングにならないだろ
Re:CPUの未来 (スコア:1)
>違う.こうすることで,コストパフォーマンスがかなり上がるはず
>だ.
2つなら1,4~1.9倍に,4つなら3倍程度にダイサイズ?(シリコン
チップの大きさ)が大きくなると思いますが.そうなると,
ウェハーあたりの製品数が減る
歩留まりが悪くなる
の2点からコストパフォーマンスが『かなり』
Re:CPUの未来 (スコア:1)
Hyper Threadingで,複数のスレッドを処理するメリットは,「空いている実行リソースを使うこと」であり,そういう意味で,コストパフォーマンスがよくなるわけです.
ILP(Instruction Level Parallelism)を利用することで,平均して並列度1.5から1.8程度の実行効率が得られますが,ILPのみでは行き詰まっており,TLP(Thread Level Parallelism)が利用されることになったという経緯があります.
たとえば,Athlonはスーパースケーラ(ILP)で,並列度3の実行に耐えられるようにできていますが,実際は並列度1.5程度の実行効率しか得られていません.しかし,スレッド数2のTLPを利用することで,おそらく並列度2を上回る実行効率が得られると思います.
ここで,あらかじめ並列度6を許容する実行リソースを用意して,スレッド数4の TLPを利用することを考えるわけです.こうすることで,実行リソースは元の2倍でありながら,おそらく並列度4以上の実行効率が得られると思います.
そうすると,元のリソースの 2倍と少しのリソースで,少なくとも3倍弱の実行効率が得られるわけです.これから,半導体の製造プロセスが微細化していくでしょうが,キャッシュメモリばかり増やしていっても,それほどパフォーマンスは上がりません.現状でも,CPUダイ上でキャッシュメモリの占めるリソースの割合はかなり大きいのです.
ですから,これからの CPUは ILPだけではなく,TLPを考慮に入れ,そのスレッド数を増やすことで,パフォーマンスとコストパフォーマンスの両面で改善が進められていくと思うわけです.