Nvidia Tesla
Tesla ist ein Prozessor mit stark parallelisiertem Design, auch Streamprozessor genannt, der Firma Nvidia. Der auf GPU-Technik basierende Prozessor kann durch die hauseigene CUDA-API und OpenCL angesprochen werden. Das Produkt steht in direkter Konkurrenz zu AMD FireStream[1] des Konkurrenten AMD.
Nachdem die ersten Karten Mitte 2007 auf Basis der G80-GPU vorgestellt wurden, folgten ein Jahr später Tesla-Karten mit dem GT200-Grafikchip, der auch für Desktopgrafikkarten der Geforce-200-Serie genutzt wird.
Unter dem Codename „Fermi" stellte Nvidia am 30. September 2009 auf der hauseigenen „GPU Technology Conference“ den Grafikprozessor der nachfolgenden Generation vor, der in Produkten wie Tesla, Quadrokarten und in abgewandelter Form (z. B. bei Double Precision beschnitten) [2] auch in der Geforce-400-Serie verwendet wird. Teslakarten auf Basis des Fermi-Grafikprozessor kündigte Nvidia auf der Supercomputing-Messe 09 für das zweite und dritte Quartal 2010 an.[3]
Inhaltsverzeichnis |
Technik[Bearbeiten]
G80[Bearbeiten]
Der G80-Grafikprozessor war der erste Prozessor von Nvidia, der auf der neuentwickelten Unified-Shader-Architektur basierte. Nachdem der G80 seit Ende 2006 auf den Geforce-Grafikkarten 8800 GTX und GTS verbaut wurde, stellte Nvidia erste Teslamodelle Mitte 2007 vor. Dabei wird primär der G80 im A3-Stepping verwendet, wie er auf der Geforce 8800 Ultra verbaut wurde.
GT200[Bearbeiten]
Der GT200-Prozessor war der zweite Chip, welchen Nvidia auf der Teslaserie verbaute. Im Gegensatz zum G80 plante Nvidia von Anfang an mit dem Einsatz auf den Teslamodellen (daher das T in der Kennung) und implementierte die Double-Precision-Fähigkeiten über 30 zusätzliche MADD-Einheit nach der IEEE-754R-Spezifikation, was für die Geforce-Grafikkarten nicht notwendig gewesen wäre.
Fermi[Bearbeiten]
Der Fermikern wird im 40-nm-Fertigungsprozess hergestellt und verfügt über rund drei Milliarden Transistoren. Er ist, im Gegensatz zu seinem Vorgänger, dem GT200, in weiten Teilen eine Neuentwicklung auf Basis der Unified-Shader-Architektur des G80-Grafikprozessors. Fermi ist in 16 Shadercluster unterteilt, wobei jeder Cluster über 32 Streamprozessoren verfügt. Damit sind insgesamt 512 Streamprozessoren vorhanden. Der Fermi-Chip verfügt über 16 „Load/Store“-Einheiten, sowie vier separate „Special Function Units“ zur Sinus- und Kosinus-Berechnung. Des Weiteren sind auf dem Fermikern sechs 64-Bit-Speichercontroller für GDDR5-Speicher vorhanden, woraus ein 384-Bit-Speicherinterface resultiert. Dieses ermöglicht den Ausbau des Speichers auf 1,5 GB, 3 GB und 6 GB. Die Speichercontroller können nun auch mit ECC-Speicher umgehen, der eine eigene Fehlerkorrektur aufweist.
Nvidia misst dem GPU-Computing inzwischen eine immer größere Bedeutung zu, weshalb viele Architekturänderungen des Fermikerns zur Leistungsverbesserung in diesem Bereich durchgeführt worden sind. So verfügt Fermi als erster Grafikprozessors überhaupt über eine komplette Unterstützung von C++ und ist mit dem IEEE-754-2008-Standard vollständig kompatibel (vorher noch IEEE-754-1985). Letzteres wurde notwendig, um zur Verbesserung der Double-Precision-Fähigkeiten (Rechnen mit doppelter Genauigkeit) das gegenüber MAD genauere FMA (Fused Multiply-Add) verwenden zu können. Dadurch kann jeder Shadercluster des Fermikerns 16 Operationen mit doppelter Genauigkeit pro Taktzyklus ausführen. Damit kann Fermi insgesamt 256 Berechnungen mit doppelter Genauigkeit pro Takt ausführen, wohingegen auf dem GT200 nur 30 möglich waren. Ebenfalls zur Verbesserung der GPU-Computing-Fähigkeiten weist der Fermi-Grafikprozessor neben dem Shared Memory auch einen L1- und L2-Cache auf.
Prozessoren[Bearbeiten]
| Chip | Fertigung | Einheiten | OpenCL Version |
Schnitt- stelle |
|||||
|---|---|---|---|---|---|---|---|---|---|
| Prozess in nm |
Transistoren in Mio. |
Die-Fläche in mm² |
ROP- Partitionen |
ROPs | Unified-Shader | ||||
| Stream- prozessoren |
Shader- Cluster |
||||||||
| G80 | 90 | 681 | 484 | 6 | 24 | 128 | 8 | 1.0 | PCIe |
| GT200 / b | 65 / 55 | 1400 | 576 / 470 | 8 | 32 | 240 | 10 | 1.0 | PCIe 2.0 |
| Fermi | 40 | 3000 | 526 | 6 | 48 | 512 | 16 | 1.1 | PCIe 2.0 |
| Kepler GK104 | 28 | 3540 | 294 | 4 | 32 | 1536 | 8 | 1.2 | PCIe 3.0 |
| Kepler GK110[4] | 28 | 7100 | k. A. | k. A. | k. A. | 2880 | 15 | 1.2 | PCIe 3.0 |
Modelldaten[Bearbeiten]
| Modell | Prozessor | Speicher | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Typ | Stream- prozessoren |
Chiptakt in MHz |
Shadertakt in MHz |
Rechenleistung[5] in GFlops |
Größe in MB |
Takt in MHz |
Typ | Speicher- interface |
Speicherdurchsatz in GB/s |
|
| Tesla C870 | G80 | 128 | 600 | 1350 | 519 | 1536 | 800 | GDDR3 | 384 Bit | 77 |
| Tesla D870 | 2× G80 | 256 | 600 | 1350 | 1037 | 3072 | 800 | GDDR3 | 2× 384 Bit | 2× 77 |
| Tesla S870 | 4× G80 | 512 | 600 | 1350 | 2074 | 6144 | 800 | GDDR3 | 4× 384 Bit | 4× 77 |
| Tesla C1060 | GT200 | 240 | 602 | 1296 | SP: 936 / DP: 78 | 4096 | 800 | GDDR3 | 512 Bit | 102 |
| Tesla S1070 | 4× GT200 | 960 | 602 | 1296 | SP: 3732 / DP: 311 | 16.384 | 800 | GDDR3 | 4× 512 Bit | 4× 102 |
| 4× GT200b | 1440 | SP: 4147 / DP: 345 | ||||||||
| Tesla C2050 | Fermi | 448 | 575 | 1150 | SP: 1030 / DP: 515 | 3072 | 1500 | GDDR5 | 384 Bit | 144 |
| Tesla M2050 | Fermi | 448 | 575 | 1150 | SP: 1030 / DP: 515 | 3072 | 1550 | GDDR5 | 384 Bit | 148 |
| Tesla C2070 | Fermi | 448 | 575 | 1150 | SP: 1030 / DP: 515 | 6144 | 1500 | GDDR5 | 384 Bit | 144 |
| Tesla M2070 | Fermi | 448 | 575 | 1150 | SP: 1030 / DP: 515 | 6144 | 1550 | GDDR5 | 384 Bit | 150 |
| Tesla S2050 | 4× Fermi | 1792 | 575 | 1150 | SP: 4120 / DP: 2060 | 12.288 | 1500 | GDDR5 | 4× 384 Bit | 4× 144 |
| Tesla S2070 | 4× Fermi | 1792 | 575 | 1150 | SP: 4120 / DP: 2060 | 24.576 | 1500 | GDDR5 | 4× 384 Bit | 4× 144 |
| Tesla M2090[6][7] | Fermi | 512 | ? | 1300 | SP: 1331 / DP: 665 | 6144 | 1850 | GDDR5 | 384 Bit | 177 |
| Tesla K10[8][9] | 2× GK104 | 3072 | 745 | ? | SP: 4580 / DP: 190 | 8192 | 2500 | GDDR5 | 2× 256 Bit | 2× 160 |
| Tesla K20 | GK110 | 2496 | 705 | ? | SP: 3520 / DP: 1170 | 5120 | ? | GDDR5 | ? | 208 |
| Tesla K20X[10] | GK110 | 2688 | 735 | ? | SP: 3950 / DP: 1310 | 6144 | ? | GDDR5 | ? | 250 |
Weblinks[Bearbeiten]
- nVidia Tesla auf der offiziellen nVidia Homepage
- Fermi-Architektur auf der offiziellen Nvidia Homepage
- Whitepaper – nVidia Fermi Architektur (englisch) (PDF; 869 kB)
Einzelnachweise[Bearbeiten]
- ↑ AMD: ATI Stream Technology – Commercial
- ↑ Tomshardware: DP-Geschwindigkeit der GTX 480 beschnitten, Nachricht vom 6. April 2010
- ↑ golem: Nvidia nennt erste Leistungswerte zu Fermi, Nachricht vom 16. November 2009
- ↑ Whitepaper Kepler GK110 (PDF; 1,7 MB)
- ↑ Rechnerisch ermittelte, theoretische maximale Rechenleistung, die real mit sinnvollem Programmcode nie erreicht werden kann.
- ↑ TESLA M2090 DUAL-SLOT COMPUTING PROCESSOR MODULE Board Specification (PDF; 348 kB)
- ↑ Produktübersicht M2090 (PDF; 423 kB)
- ↑ TESLA K10 GPU ACCELERATOR Board Specification (PDF; 650 kB)
- ↑ NVIDIA® TESLA® KEPLER GPU COMPUTING ACCELERATORS (PDF; 296 kB)
- ↑ TESLA K10 K20 K20X GPU ACCELERATOR Board Specification (PDF; 193 kB)
Grafikprozessoren: NV1 | Riva | TNT | TNT2 | Vanta | Quadro
Geforce-Familie: Geforce 256 | Geforce 2 | Geforce 3 | Geforce 4 | Geforce FX | Geforce 6 | Geforce 7
Geforce 8 | Geforce 9 | Geforce 100 | Geforce 200 | Geforce 300 | Geforce 400 | Geforce 500 | Geforce 600 | Geforce 700
Mobil und Ultramobil: Goforce | Tegra | Geforce Go | Geforce M
Chipsätze: Nforce | Nforce2 | Nforce3 | Nforce4 | Nforce 500 | Nforce 600 | Nforce 700 | ION
Prozessoren: Nvidia Tegra | Nvidia Tesla
Sonstiges: Optimus | CUDA | PhysX | PureVideo HD | SLI | TurboCache | VDPAU