Tesla は、 Nvidiaが開発し、 Curieマイクロアーキテクチャの後継として 2006 年にリリースされたGPUマイクロアーキテクチャのコードネームです。電気工学の先駆者であるニコラ・テスラにちなんで名付けられました。[ 1 ] Nvidia 初の統合シェーダーを実装したマイクロアーキテクチャとして、GeForce 8 シリーズ、GeForce 9 シリーズ、 GeForce 100シリーズ、GeForce 200 シリーズ、GeForce 300 シリーズの GPU で使用され、これらはまとめて90 nm、80 nm、65 nm、55 nm、40 nmで製造されました。また、 GeForce 405 、 Quadro FX、Quadro x000、Quadro NVS シリーズ、Nvidia Teslaコンピューティング モジュールにも搭載されました。
Teslaは、 GeForce 7シリーズに代表される旧来の固定パイプライン型マイクロアーキテクチャに取って代わった。Teslaは、 ATiがXbox 360向けに開発した同様の設計を採用した、AMD初の統合シェーダーマイクロアーキテクチャであるTeraScaleと直接競合した。Teslaの後継としてFermiが登場した。
Teslaは、NVIDIA初の統合シェーダーモデルを実装したマイクロアーキテクチャです。このドライバは、Direct3D 10 Shader Model 4.0 / OpenGL 2.1アーキテクチャをサポートしています(後のドライバではOpenGL 3.3もサポート)。この設計は、NVIDIAのGPUの機能と性能における大きな転換点であり、最も明白な変更点は、従来のGPU内の個別の機能ユニット(ピクセルシェーダー、頂点シェーダー)から、より汎用的なタスクを実行できる汎用浮動小数点プロセッサ(「ストリームプロセッサ」と呼ばれる)の均質な集合体への移行です。


GeForce 8 の統合シェーダーアーキテクチャは、多数のストリームプロセッサ(SP) で構成されています。従来のシェーダーユニットで採用されていたベクトル処理方式とは異なり、各 SP はスカラーであるため、一度に 1 つのコンポーネントのみを処理できます。これにより、構築が簡素化され、柔軟性と汎用性を維持しています。スカラーシェーダーユニットは、ピークスループットを達成するために理想的な命令混合と順序付けに依存する前世代のベクトルシェーダーユニットと比較して、多くの場合、より効率的であるという利点もあります。これらのスカラープロセッサの最大スループットが低いことは、効率性と (シンプルさによって可能になった) 高いクロック速度での動作によって補われています。GeForce 8 は、以前のGeForce 7 シリーズ GPUの動作と同様に、コアのさまざまな部分を異なるクロック速度 (クロックドメイン) で実行します。たとえば、GeForce 8800 GTX のストリームプロセッサは 1.35 GHz のクロックレートで動作しますが、チップの残りの部分は 575 MHz で動作します。[ 2 ]
GeForce 8 は、フィルタリング品質を損なうことなくレンダリングを高速化するためにさまざまな最適化や視覚的なトリックを使用していた前世代よりも大幅に優れたテクスチャ フィルタリングを実行します。GeForce 8 シリーズは、角度に依存しない異方性フィルタリングアルゴリズムと完全な三線形テクスチャ フィルタリングを正しくレンダリングします。G80 は、小型の兄弟機とは異なり、GeForce 7 シリーズよりもはるかに多くのテクスチャ フィルタリング演算機能を備えています。これにより、以前よりもはるかに少ないパフォーマンスの低下で高品質のフィルタリングが可能になります。[ 2 ]
NVIDIA は、 GPU のROP がマルチサンプル アンチエイリアシング(MSAA) と HDR ライティングを同時に実行できる機能など、新しいポリゴン エッジアンチエイリアシング方法も導入し、以前の世代のさまざまな制限を修正しました。GeForce 8 は、FP16 と FP32 の両方のテクスチャ フォーマットで MSAA を実行できます。GeForce 8 は、以前のカードの 64 ビット サポートから増加した 128 ビットHDR レンダリングをサポートしています。チップの新しいアンチエイリアシング技術であるカバレッジ サンプリング AA (CSAA) は、Z、色、およびカバレッジ情報を使用して最終的なピクセルの色を決定します。この色最適化技術により、16X CSAA は鮮明でシャープに見えます。[ 3 ]
Teslaベースのカードで主張されている理論上の単精度演算能力(FLOPS単位)は、実際のワークロードでは達成が難しい可能性がある。[ 4 ]
G80/G90/GT200では、各ストリーミングマルチプロセッサ(SM)は、8つのシェーダープロセッサ(SP、または統合シェーダー、またはCUDAコア)と2つの特殊機能ユニット(SFU)で構成されています。各SPは、1クロックあたり最大2つの単精度演算(1つのMAD命令を使用して、1つの乗算と1つの加算)を実行できます。各SFUは、1クロックあたり最大4つの演算(4つのMUL(乗算)命令)を実行できます。したがって、1つのSM全体としては、1クロックあたり8つのMAD(16演算)と8つのMUL(8演算)を実行でき、合計24演算を実行できます。これは(相対的に言えば)SPの数の3倍です。したがって、SP 数 [ n ] とシェーダー周波数 [ f 、GHz ]を持つグラフィックス カードの理論的なデュアル発行 MAD+MUL パフォーマンスを浮動小数点演算/秒 [ FLOPS sp+sfu、GFLOPS ] で計算するには、式はFLOPS sp+sfu = 3 × n × f となります。[ 5 ] [ 6 ]
しかし、MAD+MULのような二重発行パフォーマンスを活用することには問題がある。
これらの理由から、実際のワークロードのパフォーマンスを推定するには、SFU を無視し、サイクルごとに SP あたり 1 MAD (2 演算) のみを仮定する方が役立つ場合があります。この場合、1 秒あたりの浮動小数点演算の理論的なパフォーマンスを計算する式は次のようになります。FLOPS sp = 2 × n × f。
Tesla GPU の理論上の倍精度処理能力は GT200 の単精度性能の 1/8 であり、G8x および G9x では倍精度はサポートされていません。[ 10 ]
NVENCは後の世代のチップで初めて導入された。
GTX 200 GPU の個々のストリーミング処理コアは、乗算加算演算 (MAD) と MUL (3 flops/SP) のほぼフルスピードのデュアル発行を実行できるようになりました。