投稿「Help the GPU?」への返信//コンピューティングに関する哲学的考察

物語





ヘテロジニアスコンピューティングは長年にわたって肉体と血液の分野にあります-Cellアーキテクチャ。 1コアがスマートであり、最新のPCでCPUが実行する機能を実行する1パーセントがあり、8カーネルはビューのカーネルよりもはるかに単純で、少し複雑で、それぞれ独自の命令フローがありますが、制御コアによって決定されます。これらのコアは割り込みも処理せず、単に数をカウントします。 しかし、このアーキテクチャではスケーリングの問題が発生します。そのようなコアを2つだけ作成すると問題が発生するためです。1つのメインコアで実行されるスレッドは、その「ドーター」コアに対して別のコアよりも多くの作業を行う場合があり、チップの使用率が悪化します はい、そのようなことを書くのは難しいですが、このアーキテクチャはさまざまな方法で開発できます。



コンピューティングに関する哲学的考察





フェルミの前は、nVidiaには1つのコンピューティングユニットに8つの核小体がありました-エグゼクティブユニットを数えます。 セルとGPUに似た何かを1つ(2.4セルコントロールコア)で実行して、古いタイプのnVidiaで使用されているものと同様の4、8 S​​IMDブロックにタスクを与え、コントロールコアはタスクを単純にキューに入れ、ハードウェアシェダラーは、2、4のキュー(コントロールコアごとに1つ)からタスクを割り当て、SIMDブロックを解放します。 プログラマーの観点から、追加のカーネルはカーネル内の単なるSIMDブロックであるため、このようなスキームはそのようなチップのプログラミングを簡素化します.SIMDブロックが存在することやエグゼクティブブロックがいくつあるかを疑うことなく、通常のプロセッサ向けのプログラムを作成しています。 これは、AMDがブルドーザーアーキテクチャで行っていることと非常によく似ています(Sunプロセッサーはコアごとに多くのスレッドを持ち、それらの間でリソースを効率的に共有します)。2つのスレッドに共通のスケジューラーがあり、2つのコアのリソースを制御します。 コンベヤを長くすると、2つのスレッドではなく、4つ以上のモジュールでスケジューラを作成できます。これにより、SSE /(将来はAVX)を頻繁に使用するシングルスレッドタスクでも実行ユニットを利用できます。 これを行うには、命令セットの興味深い種類の拡張が本当に必要ですが、彼らはすでにそれについて考えていました-これはIntell AVXであり、彼ら自身がLarrabeeビデオカードとプロセッサの両方に使用したかったです。 これらのチップのコアには16の実行ユニットがあり、SSE操作を実行するSIMDブロックの最新のプロセスでは4倍小さいことがわかっているため、スタジオの仲間はこれらの命令を仮想化する方法をすでに理解していると結論付けることができます。つまり、プログラミングの問題は単に価値がある、唯一の問題は、それらが成功しなかったことであり、これが異種計算をscる唯一の理由です。 以前の生産的な異種計算は、同じチップ上にビデオカードを挿入するよりも4倍広いブルドーザーアプローチによって早く導かれますが、これはアクセス時の遅延を減らしますが、作業を簡素化するものではありません。 スマートバーチャルマシンは、パーセントをグラフィックチップと組み合わせて、SIMDブロックに少数の実行ユニットを組み合わせれば役立ちます。Fusionチップの1つのSIMDブロックに80のコンピューティングユニットは、大きすぎます/小さな爪を打つには人間工学的なクラブではありません。 AMDビデオカードのアーキテクチャは、nVidiaアーキテクチャとは異なり、ほとんどのコンピューティングタスクにはあまり適していません-それは秘密ではありません。 しかし、ゲームに非常に適しています。結論は、新しいGPUアーキテクチャを作成しないと、AMDがFusionからキャンディを作成する可能性が悪くなるということです。



近い将来





しかし、現実に戻りましょう-nVidiaは、ヘテロジニアスコンピューティングは疑わしいアイデアだと言いました。明らかに、彼らは1つのチップ上でARMアーキテクチャで独自のパーセント、マルチコアパーセント、FermiアーキテクチャでVidahaを作ることを決めたためです-私の意見では、計算よりもはるかに便利で興味深いでしょうクールなフェルミカード。マップ/リダイのペアの削減は再帰的に実行されるため、シーケンシャル-ビューのマップ/削減パラダイムの使用を成功させるには、いくつかのプロセッサ核小体が必要です。 頻度の高い、個々のスケジューラーと命令の並外れた実行-1つのチップ上の場所により、データをメモリにコピーするオーバーヘッドなしでこれを行うことができます+チップ上で新しいタスク/スレッドを直接作成できます。ビデオカードのアーキテクチャを変更する必要はありません-しかし、ドライバーの変更のみ



All Articles