NVIDIA Tesla(エヌビディア テスラ)は、NVIDIAデータセンター用のGPU製品シリーズ。GeForceQuadroをベースとしており、NVIDIA初のGPGPU専用製品である。2017年のVoltaマイクロアーキテクチャ以降は Tesla という名称が消え、単に頭に NVIDIA が付くだけになった。

Nvidia Tesla GPU

概要 編集

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

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

競合となるのはAMDAMD FireStreamAMD FirePro Sシリーズ)である。

Kepler世代以降のTeslaは353.06ドライバでOpenCL 1.2に対応している[1]が、それ以前のG80からFermiまではOpenCL 1.1までの対応となる。

仕様と構成 編集

表中の性能欄は、単精度/倍精度浮動小数点の理論演算性能(ピーク時)である。

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

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

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

注釈

  • 1 NVIDIAが明らかにしていない仕様については、GeForce 8800 GTXからの推測。
  • 2 NVIDIAが明らかにしていない仕様については、GeForce GTX 280からの推測。

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

2009年11月6日発表[7]。ハーフレートの倍精度演算性能を実現している(倍精度の理論演算性能は単精度の場合の1/2になっている)。

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

注釈

  • 3 NVIDIAが明らかにしていない仕様については、Quadro 6000からの推測。
  • 5 GF100 (Quadro 6000/GeForce GTX 480) ベース[要出典]
  • 6 GF110 (GeForce GTX 580[要出典]) ベース

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

最初の製品であるTesla K10は2012年5月16日に発表された[10]。GK104ベースのK10は単精度の理論演算性能は高いものの、倍精度の理論演算性能が極端に低く(単精度の場合の1/24[11])、科学技術計算向けではなく信号処理画像処理向けのソリューションという位置付けになっている[12]。なおGK110ベースとなるK20およびK40、そしてGK210ベースとなるK80における倍精度の理論演算性能は単精度の場合の1/3となっている[13] [14] [15]。2014年に発表されたTesla K8もGK104ベース[16]だが、K8はTeslaシリーズ初の1スロット省スペース製品となる[17]

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

  • 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[20]となるが、CC 3.5以上ではDynamic ParallelismやHyper-Qといった機能を備えている[21]

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

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

注釈

  • 7 GK104ベース
  • 8 GK104 (GeForce GTX 690) ベース

Maxwellマイクロアーキテクチャ 編集

MaxwellではKeplerよりもさらに倍精度サポートが削られている(単精度の場合の1/32)。M4/M40は主に機械学習ディープラーニング向けのソリューションとして提供されている[22] [23] [24] [25]

機種名 GPU数 CUDA メモリ 性能
単精度
(TFLOPS)
性能
倍精度
(TFLOPS)
形状など
CUDAコア数 SM数 CUDAコアクロック (MHz) 最大帯域幅 (GB/s) バス規格 バス幅 (bit) 総容量 (GiB) クロック (GHz)
M6 [26] 1 1536 12 950

1051 (Boost)

147.3 GDDR5 256 8 2.5 3.6 (Boost) 0.11 (Boost) MXM
M60 [27] 2 4096
(2048x2)
32

(16x2)

899

1178 (Boost)

320

(160x2)

GDDR5 256 16
(8x2)
2.5 9.65

(4.825x2)

0.3

(0.15x2)

フルハイト
M4 [28] 1 1024 8 517

1074 (Boost)

88 GDDR5 128 4 2.75 2.2 (Boost) 0.07 (Boost) ロープロファイル/
パッシブ
M40 [29] 1 3072 24 948
1114 (Boost)
288 GDDR5 384 12 3 5.8
6.8 (Boost)
0.18
0.21 (Boost)
フルハイト/
パッシブ・ヒートシンク型

Pascalマイクロアーキテクチャ 編集

最初の製品であるTesla P100は2016年4月に発表された[30]。16nmプロセスルールを採用。GP100ベースのP100では、Fermi世代のようなハーフレートの倍精度対応のほか、ダブルレートの半精度対応も実現されている(半精度の理論演算性能は単精度の場合の2倍になっている)。メモリに第2世代のHigh Bandwidth Memory (HBM2) を採用する。NVIDIA独自のインターコネクト規格であるNVLinkにも対応し、これまでプロセッサ間の通信ボトルネックとなっていたPCI Expressを大幅に超える伝送帯域幅を実現できる。

GP102ベースのP40およびGP104ベースのP4では、倍精度の理論演算性能は単精度の場合の1/32になっている[31]。また、SMあたりのCUDAコア数は128、共有メモリも96KBとなっており、Maxwellアーキテクチャに近い[32]

機種名 GPU数 CUDA メモリ 性能
単精度
(TFLOPS)
性能
倍精度
(TFLOPS)
形状など
CUDAコア数 SM数 CUDAコアクロック (MHz) 最大帯域幅 (GB/s) バス規格 バス幅 (bit) 総容量 (GiB) クロック (GHz)
P4 [33] 1 2560 20 810
1063 (Boost)
192 GDDR5 256 8 3 4.15
5.44 (Boost)
0.13
0.17 (Boost)
ロープロファイル
P40 [34] 1 3840 30 1303
1531 (Boost)
346 GDDR5 384 24 7.25 10.01
11.76 (Boost)
0.31
0.36(Boost)
フルハイト
P100 PCIe [35] 1 3584 56 1189
1328 (Boost)
540 /

720

HBM2 4096 12 /

16

0.715 9.5 (Boost) 4.8 (Boost) フルハイト/

パッシブ

P100 SXM2 [36] 1 3583 56 1328
1480 (Boost)
720 HBM2 4096 16 0.715 10.6 (Boost) 5.3 (Boost) NVLink/

パッシブ

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

最初の製品であるTesla V100は2017年5月に発表された[38]。12nmプロセスルールを採用。行列演算を実行するための専用プロセッサ「Tensor Core」を搭載する。

機種名 GPU数 CUDA メモリ 性能
単精度
(TFLOPS)
性能
倍精度
(TFLOPS)
形状など
CUDAコア数 SM数 CUDAコアクロック (MHz) 最大帯域幅 (GB/s) バス規格 バス幅 (bit) 総容量 (GiB) クロック (GHz)
V100 PCIe 1 5120 80 1245
1380 (Boost)
900 HBM2 4096 16 0.876 14 (Boost) 7 (Boost) フルハイト/

パッシブ

V100 SXM2 1 5120 80 1312

1530 (Boost)

900 HBM2 4096 16 0.876 15 (Boost) 7.5 (Boost) NVLink/

パッシブ

Turingマイクロアーキテクチャ 編集

Tesla T4が2018年9月に発売された。

機種名 GPU数 CUDA メモリ 性能
単精度
(TFLOPS)
性能
倍精度
(TFLOPS)
形状など
CUDAコア数 SM数 CUDAコアクロック (MHz) 最大帯域幅 (GB/s) バス規格 バス幅 (bit) 総容量 (GiB) クロック (GHz)
T4 1 2560 40 585

1590 (Boost)

320 GDDR6 256 16 1.25 8.1 不明 フルハイト

Ampereマイクロアーキテクチャ 編集

最初の製品であるTesla A100は2020年5月に発売された。

機種名 GPU数 CUDA メモリ 性能
単精度
(TFLOPS)
性能
倍精度
(TFLOPS)
形状など
CUDAコア数 SM数 CUDAコアクロック (MHz) 最大帯域幅 (GB/s) バス規格 バス幅 (bit) 総容量 (GiB) クロック (GHz)
A2 1 1280 不明 1440

1770 (Boost)

200 GDDR6 128 16 6.25 4.531 0.14 ハーフハイト
A10 1 9216 84 885

1695 (Boost)

600 GDDR6 384 24 不明 31.24 0.976 フルハイト
A16 4 5120

(1280x4)

20 885

1695 (Boost)

800

(200x4)

GDDR6 128x4 64

(16x4)

6.25 18.432

(4.608x4)

1.0848 フルハイト/

2スロット

A30 1 3584 128 930

1440 (Boost)

933 HBM2 3072 24 1.215 10.32 5.161 フルハイト/

2スロット

A40 1 10752 84 1305

1740 (Boost)

696 GDDR6 384 48 7.251 37.42 1.168 フルハイト/

2スロット

A100 PCIe 1 6912 108 765

1410 (Boost)

1555 HBM2 5120 40 / 80 不明 19.5 9.7 フルハイト/

2スロット

A100 SXM 1555

2039

不明 SXM英語版

Hopperマイクロアーキテクチャ 編集

最初の製品であるTesla H100は2022年3月に発売された。

機種名 GPU数 CUDA メモリ 性能
単精度
(TFLOPS)
性能
倍精度
(TFLOPS)
形状など
CUDAコア数 SM数 CUDAコアクロック (MHz) 最大帯域幅 (GB/s) バス規格 バス幅 (bit) 総容量 (GiB) クロック (GHz)
H100 PCIe 1 14592 114 1065

1650 (Boost)

2000 HBM2e 5120 80 不明 48 24 フルハイト/

2スロット

H100 SXM 1 16896 132 3350 HBM3 不明 60 30 SXM英語版
H200 SXM 4800 HBM3e 141 不明 67 34 SXM

脚注 編集

  1. ^ Release 352 Quadro, NVS, Tesla, GRID, & Notebook Drivers - Version 353.06; RN-WQ35306-01_v01 | June 1, 2015; Windows 7, Windows 8, & Windows 8.1; Release Notes
  2. ^ NVIDIA、G80ベースのHPC向けGPU「Tesla」
  3. ^ Tesla Technical Brief (PDF)
  4. ^ NVIDIA Tesla C1060コンピューティングプロセッサ―ワークステーション向けメニーコアスーパーコンピューティング
  5. ^ NVIDIA Tesla S1070 1Uコンピューティングシステム― データーセンター向けの測定可能なメニーコアスーパーコンピューティング
  6. ^ NVIDIA Tesla S1070 - 株式会社 エルザ ジャパン
  7. ^ NVIDIA、Fermi採用の並列プロセッサ「NVIDIA Tesla 20シリーズ」発表 - ITmedia エンタープライズ
  8. ^ Tesla C2050 / C2070 GPUコンピューティングプロセッサ
  9. ^ NVIDIA Tesla C2075 | 株式会社 エルザ ジャパン
  10. ^ NVIDIA Tesla K10 GPU、石油・ガスの探査や防衛産業向け信号処理・画像処理を高速化 | NVIDIA
  11. ^ 4Gamer.net ― 「GeForce GTX TITAN」登場。500円玉より大きなモンスターGPUの“性能以外”を徹底解説
  12. ^ 4Gamer.net ― NVIDIA,Keplerベースの新世代Teslaを発表。「GK110」コア採用の「Tesla K20」が年内に登場予定
  13. ^ AnandTech | NVIDIA Launches Tesla K80, GK210 GPU
  14. ^ NVIDIA,新型GPUコア「GK210」搭載のHPC向けデュアルGPUカード「Tesla K80」を発表 - 4Gamer.net
  15. ^ NVIDIA® Tesla® GPU Accelerators Datasheet - nvidia-tesla-kepler-family-datasheet.pdf
  16. ^ Tesla-K8-Board-Spec-BD-07228-001-v03.pdf
  17. ^ NVIDIA Tesla K8 | 株式会社 エルザ ジャパン
  18. ^ 【後藤弘茂のWeekly海外ニュース】 NVIDIAが次世代GPUアーキテクチャ「Kepler」のベールを剥いだ
  19. ^ ホワイトペーパー NVIDIAの次世代型CUDA コンピュート・アーキテクチャ Kepler GK110
  20. ^ Whitepaper; NVIDIA’s Next Generation CUDA™ Compute Architecture: Kepler™ GK110/210
  21. ^ Kepler Tuning Guide :: CUDA Toolkit Documentation
  22. ^ NVIDIA,Maxwellベースの数値演算アクセラレータ「Tesla M40」「Tesla M4」を発表 - 4Gamer.net
  23. ^ NVIDIA、Maxwellベースで7TFLOPSを実現する機械学習向け「Tesla M40」 ~Low Profileの1スロットの「Tesla M4」も - PC Watch
  24. ^ NVIDIA Tesla M60 and Tesla M6 Accelerators To Power Grid 2.0 - M60 Featuring Dual-GM204 GPUs
  25. ^ NVIDIA Announces Tesla M40 & M4 Server Cards - Data Center Machine Learning
  26. ^ Tesla M6 Product Brief
  27. ^ Tesla M60 Product Brief
  28. ^ Data Sheet: Tesla M4
  29. ^ NVIDIA Tesla M40 | 株式会社 エルザ ジャパン
  30. ^ [GTC 2016]西川善司の3DGE:Teslaとして登場した新世代GPU「Pascal」,その詳細に迫る - 4Gamer.net
  31. ^ NVIDIA,ディープラーニング向け数値演算アクセラレータ「Tesla P40」「Tesla P4」を発表 - 4Gamer.net
  32. ^ PASCAL: 最新GPUアーキテクチャ
  33. ^ NVIDIA Tesla P4 GPU Datasheet
  34. ^ Data Sheet: Tesla P40
  35. ^ Data Sheet: Tesla P100
  36. ^ Data Sheet: Tesla P100
  37. ^ NVIDIA TESLA V100 GPU ACCELERATOR
  38. ^ [GTC 2017]西川善司の3DGE:Volta世代のGPU「GV100」は,これまでと大きく異なるプロセッサだ――いったい何が? - 4Gamer.net

関連項目 編集

外部リンク 編集