NVIDIA Tesla
NVIDIA Tesla︵エヌビディア テスラ︶は、NVIDIAのデータセンター用のGPU製品シリーズ。GeForceやQuadroをベースとしており、NVIDIA初のGPGPU専用製品である。2017年のVoltaマイクロアーキテクチャ以降は Tesla という名称が消え、単に頭に NVIDIA が付くだけになった。
![](http://upload.wikimedia.org/wikipedia/commons/thumb/3/32/NvidiaTesla.jpg/300px-NvidiaTesla.jpg)
概要
編集
汎用CPUに比べて浮動小数点演算性能が高く、高性能計算市場での使用を意図した製品であり、TOP500のスーパーコンピュータでも多数採用されている。主な用途は機械学習のディープラーニング、シミュレーション、大規模な計算︵特に浮動小数点演算︶、高品質の画像生成などで、APIとしてCUDAやOpenCL、DirectComputeを使用する。
なお同社製グラフィックス製品であるGeForceやQuadroとは異なり、TeslaシリーズはC2050/C2070などの一部を除いてディスプレイ出力を持たず、完全に演算用途に特化している。
競合となるのはAMDのAMD FireStream︵AMD FireProSシリーズ︶である。
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/
パッシブ |
機種名 | 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 |
脚注
編集
(一)^ 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
(二)^ NVIDIA、G80ベースのHPC向けGPU﹁Tesla﹂
(三)^ Tesla Technical Brief (PDF)
(四)^ NVIDIA Tesla C1060コンピューティングプロセッサ―ワークステーション向けメニーコアスーパーコンピューティング
(五)^ NVIDIA Tesla S1070 1Uコンピューティングシステム― データーセンター向けの測定可能なメニーコアスーパーコンピューティング
(六)^ NVIDIA Tesla S1070 - 株式会社 エルザ ジャパン
(七)^ NVIDIA、Fermi採用の並列プロセッサ﹁NVIDIA Tesla 20シリーズ﹂発表 - ITmedia エンタープライズ
(八)^ Tesla C2050 / C2070 GPUコンピューティングプロセッサ
(九)^ NVIDIA Tesla C2075 | 株式会社 エルザ ジャパン
(十)^ 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