NVIDIA Tesla

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
NVIDIA Tesla GPU

NVIDIA TeslaNVIDIAHPC向けGPU製品シリーズ。GeForceQuadroをベースとしており、NVIDIA初のGPGPU専用製品である。

概要[編集]

汎用CPUに比べて浮動小数点演算性能が高く、高性能計算市場での使用を意図した製品である。2015年現在、TOP500スーパーコンピュータでも多数採用されている。主な用途はシミュレーション、大規模な計算(特に浮動小数点演算)、高品質の画像生成などで、APIとしてCUDAOpenCLを使用する。

なお同社製グラフィックス製品であるGeForceやQuadroとは異なり、Teslaシリーズはディスプレイ出力を持たず、完全に演算用途に特化している。

競合となるのはAMD社のAMD FireStream (AMD FirePro Sシリーズ) である。

仕様と構成[2][編集]

Tesla マイクロアーキテクチャ[編集]

2007年6月20日発表[3]。G80ベースのx870シリーズは単精度浮動小数点演算のみの対応であり、倍精度浮動小数点演算は実行できない[4]

構成 機種名 GPU数 クロック
(MHz)
シェーダ メモリ 性能4
単精度
(TFLOPS)
形状など
CUDA
コア数
クロック (MHz) 最大帯域幅 (GB/s) バス規格 バス幅 (bit) 総容量 (GiB) クロック (GHz)
GPUコンピューティングプロセッサ1 C870 1 600 128 1350 77 GDDR3 384 1.5 1.6 0.519 フルハイトビデオカード
デスクサイト・スーパーコンピュータ1 D870 2 600 256 1350 154 GDDR3 384 3 1.6 1.037 デスクサイドシステム/ラックマウント装置
GPUコンピューティングサーバ1 S870 4 600 512 1350 307 GDDR3 384 6 1.6 2.074 1Uラック
C1060
コンピューティングプロセッサ 2
C1060 1 602 240 1300 102 GDDR3 512 4 1.6 0.936 フルハイトビデオカード
IEEE 754r 機能
S1070 1U
GPUコンピューティングサーバ2
S1070 4 602 960 1500 410 GDDR3 512 16 1.6 3.744 1Uラック
IEEE 754r 機能

注釈

  • 1 NVIDIA が明らかにしていない仕様については、GeForce 8800 GTX からの推測。
  • 2 NVIDIA が明らかにしていない仕様については、GeForce GTX 280 からの推測。
  • 4 単精度浮動小数点演算性能(ピーク時)

Fermi マイクロアーキテクチャ[編集]

2009年11月6日発表[5]

機種名 GPU数 クロック
(MHz)
シェーダ メモリ 性能4
単精度
(TFLOPS)
形状など
CUDA
コア数
クロック (MHz) 最大帯域幅 (GB/s) バス規格 バス幅 (bit) 総容量 (GiB) クロック (GHz)
C20503, 5 1 575 448 1150 144 GDDR5 384 3 1.5 1.03 フルハイトビデオカード
IEEE 754r 機能
画面出力機能付き
C20703, 5 1 575 448 1150 144 GDDR5 384 6 1.5 1.03
C20753, 6 1 575 448 1150 144 GDDR5 384 6 1.5 1.03
M2050 1 575 448 1150 148 GDDR5 384 3 1.546 1.03 フルハイト/
パッシブ・ヒートシンク型
M2070 1 575 448 1150 150 GDDR5 384 6 1.566 1.03
M2090 1 650 512 1300 177 GDDR5 384 6 1.85 1.331
S2050 4 575 1792 1150 148 GDDR5 384 12 1.55 4.13 1Uラック

注釈

  • 3 NVIDIA が明らかにしていない仕様については、Quadro 6000 からの推測。
  • 5 Quadro 6000ベース
  • 6 GeForce GTX 580ベース

Kepler マイクロアーキテクチャ[編集]

2012年5月16日発表[6]。GK104ベースのK10は単精度の理論演算性能は高いものの、倍精度の理論演算性能が極端に低く(単精度の場合の1/24[7])、科学技術計算向けではなく信号処理画像処理向けのソリューションという位置付けになっている[8]。なおGK110ベースとなるK20およびK40、そしてGK210ベースとなるK80における倍精度の理論演算性能は単精度の場合の1/3となっている[9] [10]

Fermi マイクロアーキテクチャでは SM (ストリーミング・マルチプロセッサー) と呼ばれていた概念が、Kepler マイクロアーキテクチャでは SMX という名称になった。GK104/GK110の各 SMX が搭載する代表的なユニットは下記である[11] [12]

  • 192 CUDA コア。16 CUDA コアを1グループとして、12グループ搭載する。
  • 64K個の32ビットレジスタ。合計256KB。
  • L1キャッシュ 64KB。このうち 16KB/32KB/48KB を共有メモリとして使用。共有メモリからは1サイクルで最大256B読み出せる。
  • 読み取り専用キャッシュ 48KB。
  • 特殊関数ユニット (SFU) 32個。三角関数対数関数などを計算。

Fermi 同様、各スレッド(コア)はワープ (warp) 単位で動作させる(1ワープは32スレッド)。ワープ内のスレッドは同期し、それぞれ同じ命令を実行する。16 CUDA コアを1グループとしているので、32スレッドに命令が行き渡るには2サイクル以上必要となる。その他、Kepler世代ではワープ内で共有メモリを介することなくデータ交換を可能にするシャッフル命令が実装されている。なおCompute capability (CC) に関しては、GK104はCC 3.0、GK110はCC 3.5、そしてGK210はCC 3.7[13]となるが、CC 3.5以上ではDynamic ParallelismやHyper-Qといった機能を備えている[14]

フルスペックGK104では512KB、またフルスペックGK110/GK210では 1536KB (1.5MB) の L2 キャッシュを全 SMX で共有し、このキャッシュを経由して DRAM にアクセスする。なおIntelの第1世代 Xeon Phi は 30MB 前後の L2 キャッシュを搭載しており、この点が設計の違いの一つとなる[独自研究?]

機種名 GPU数 クロック
(MHz)
シェーダ メモリ 性能
単精度
(TFLOPS)
性能
倍精度
(TFLOPS)
形状など
CUDA
コア数
SMX
クロック (MHz) 最大帯域幅 (GB/s) バス規格 バス幅 (bit) 総容量 (GiB) クロック (GHz)
K107 2 745 3072
(1536x2)
8x2 745 320
(160x2)
GDDR5 256 8
(4x2)
2.5 4.577
(2.288x2)
0.191
(0.095x2)
フルハイト/
パッシブ・ヒートシンク型
K20 1 706 2496 13 706 208 GDDR5 320 5 2.6 3.52 1.17
K20X 1 732 2688 14 732 250 GDDR5 384 6 2.6 3.95 1.31
K40 1 745 2880 15 745
875(Boost)
288 GDDR5 384 12 3 4.29
5(Boost)
1.43
K80 2 562 4992
(2496x2)
13x2 562
875(Boost)
480
(240x2)
GDDR5 384 24 2.5 5.6
8.74(Boost)
1.87

注釈

  • 7 GTX 690ベース

関連項目[編集]

脚注[編集]

外部リンク[編集]