Tesla – grupa układów firmy NVIDIA przeznaczonych do wspomagania obliczeń naukowo-inżynierskich za pomocą technologii CUDA. Układy te zaprojektowano jako typowe karty rozszerzeń komputerów PC, które (w 2009 r.) mogą być instalowane w każdym komputerze posiadającym wolne gniazdo PCI Express. Układy Tesla są pierwszymi masowo produkowanymi układami przeznaczonymi do pracy w technologii GPGPU.

Nvidia Tesla GPU

Charakterystyka urządzenia edytuj

Układy serii Tesla zostały wprowadzone na rynek jesienią 2006 r. jako nowa rodzina produktów firmy NVidia przeznaczonych do zastosowań w segmencie komputerów o bardzo dużej mocy obliczeniowej. Wyposażone są w procesory ze zunifikowanymi jednostkami cieniującymi o architekturze masowo produkowanych kart graficznych GeForce i Quadro. Część z nich (z wyjątkiem układów Tesla C2050 i Tesla C2070) pozbawiona jest wyjścia video oraz układów elektronicznych przeznaczonych bezpośrednio do generowania obrazu i w tym sensie nie są to karty graficzne – producent określa je mianem computing processors (procesory obliczeniowe).

W porównaniu z kartami graficznymi serii GeForce, układy Tesla charakteryzują się znacznie zwiększoną pojemnością wysokiej jakości, specjalnie testowanej pamięci operacyjnej DRAM. Pamięć ta jest taktowana nieco wolniejszym zegarem, co powoduje zmniejszenie przepustowości szyny danych. Urządzenia Tesla oparte na architekturze Fermi obsługują pamięć ECC, oferują pełną wydajność procesorów strumieniowych w obliczeniach w podwójnej precyzji oraz posiadają dwa układy DMA co umożliwia jednoczesny transfer w obu kierunkach po szynie PCIe i obliczenia.

Zastosowania edytuj

Dzięki ogromnej mocy obliczeniowej, niskiej cenie, stosunkowo niewielkiemu zapotrzebowaniu na energię elektryczną oraz zgodności ze środowiskiem CUDA, układy Tesla stanowią atrakcyjną alternatywę dla tradycyjnych systemów obliczeniowych dużej mocy, jak klastry CPU i superkomputery. Głównym obszarem ich zastosowań są problemy masywnie równoległe rozwiązywane w arytmetyce zmiennoprzecinkowej: obliczenia naukowo-inżynierskie (np. symulacje przepływów płynów, symulacje metodą dynamiki molekularnej), rozwiązywanie równań bardzo wielu zmiennych, analiza danych finansowych, obróbka dźwięku i obrazu, diagnostyka medyczna. W wielu przypadkach zastosowanie procesorów obliczeniowych Tesla spowodowało przyspieszenie obliczeń (względem konwencjonalnych komputerów klasy PC) o kilka do nawet kilkuset razy[1].

Pierwszym superkomputerem wykorzystującym układy Tesla jest japoński TSUBAME — hybrydowy klaster składający się (pod koniec 2008 r.) z 655 serwerów Sun x4600 oraz 170 serwerów Tesla S1070[2]. W listopadzie 2008 r. zajął on 29. miejsce na liście TOP500 najszybszych komputerów świata[3]. Tesla V100 została wykorzystana w hybrydowych superkomputerach Summit i Sierra, zajmujących (pod koniec roku 2018) dwa czołowe miejsca w rankingu TOP500[4].

Specyfikacje edytuj

Układy Tesla dostępne są jako:

  • Pojedyncze urządzenia w obudowie karty graficznej. Symbole tych urządzeń rozpoczynają się literą C (ang. Card – 'Karta'), np. C870, C1060. Łączy się je z komputerem głównym poprzez złącze PCI-Express na płycie głównej. Modele C2050 i C2070 posiadają pojedyncze wyjście video (gniazdo DVI).
  • Pojedyncze urządzenia w obudowie karty graficznej, pozbawione własnego wentylatora (chłodzenie pasywne) i wyjścia video. Symbole tych urządzeń rozpoczynają się lub kończą literą M, np. M2050, M2070, K20M. Łączy się je z komputerem głównym poprzez złącze PCI-Express na płycie głównej. Wprowadzone na rynek w 2010 r. wraz z premierą architektury Fermi i przeznaczone do serwerów w dużych centrach obliczeniowych.
  • Wolnostojące zestawy kilku kart. Symbole tych urządzeń rozpoczynają się literą D (ang. Desktop), np. D870. Łączy się je z komputerem głównym poprzez kabel PCI-Express. Jedynym reprezentantem tej klasy urządzeń jest D870.
  • Zestawy kilku (zwykle czterech) kart obliczeniowych w formie modułów 1U do montowania w szafach montażowych. Symbole tych urządzeń rozpoczynają się literą S (ang. Server), np. S870, S1070. Procesory GPU w tych urządzeniach są parami podłączone do przełączników PCIe (PCIe x16 Gen2 switch), które następnie za pomocą dwóch kabli PCI-Express łączy się z jednym lub dwoma komputerami.

Poniższa tabela przedstawia główne parametry urządzeń Tesla:

Model Mikro-architektura GPU Procesory skalarne Pamięć Całkowita moc obliczeniowa CUDA Compute capability TDP
[ W
Typ Liczba
Liczba
Zegar
MHz
Przepustowość maks.
GB/s
Rodzaj
Szerokość szyny danych
bit
Rozmiar
GB
Zegar
[MHz]
fp 32
GFLOPS
fp 64
GFLOPS
C870 Tesla GT80 1 128 1350 77 GDDR3 384 1,5 800 519 1.0 170.9
D870 GT80 2 256 (2*128) 1350 154 (2*77) GDDR3 384 2*1,5 800 1037 1.0 520
S870 GT80 4 512 (4*128) 1350 307 (4*77) GDDR3 384 4*1,5 800 2074 1.0
C1060 T10 1 240 1296 102 GDDR3 512 4 800 936 78 1.3 187.8
S1070 T10 4 960 (4*240) 1296 lub 1440 408 (4*102) GDDR3 512 4*4 792 3732 lub 4147 311 lub 345 1.3
C2050 Fermi T20 1 448 1150 144 GDDR5 384 3 1500 1030 515 2.0 238
C2070 T20 1 448 1150 144 GDDR5 384 6 1500 1030 515 2.0 247
M2050[5] T20 1 448 1150 148 GDDR5 384 3 1500 1030 515 2.0 225
M2070[5] T20 1 448 1150 150 GDDR5 384 6 1500 1030 515 2.0 225
M2075[5] T20A 1 448 1150 150 GDDR5 384 6 1500 1030 515 2.0 225
M2090[5][6] T20A 1 512 1300 177 GDDR5 384 6 1850 1331 665 2.0 225
K10[7] Kepler GK104 2 2 * 1536 745 2 * 160 GDDR5 256 2*4 2500 2*2290 2*95 3.0 225
K20[8][9] GK110 1 2496 706 208 GDDR5 384 5 2600 3520 1170 3.5 225
K20X[8][10] GK110 1 2688 732 250 GDDR5 384 6 2600 3950 1310 3.5 235
K40[11] GK110 1 2688 745(base)

875(boost)

288 GDDR5 384 12 3000 4290(base)

5000(boost)

1430(base)

1660(boost)

3.5 245
K80 [12][13] GK210 2 2*2496 560(base)

875(boost)

2*240 GDDR5 384 2*12 2500 2*2800(base)

2*4370(boost)

2*935(base)

2*1455(boost)

3.7 300
M4[14] Maxwell GM206 1 1024 872(base)

1072(boost)

88 GDDR5 128 4 2750 1786(base)

2195(boost)

56(base)

69(boost)

5.2 50-75
M40[14] GM200 1 3072 948(base)

1114(boost)

288 GDDR5 384 12 3000 5825(base)

6844(boost)

182(base)

214(boost)

5.2 250

Uwagi

  • Źródło: NVidia. Część danych dotyczących częstotliwości zegarów jest prawdopodobnie zaokrąglona.
  • CUDA Compute Capabilities to specyfikacja technicznych możliwości urządzenia; patrz: Cuda C Programming Guide.
  • Skróty fp32 i fp64 oznaczają dokładność obliczeń zmiennopozycyjnych (32 lub 64 bity).
  • W teście LINPACK (fp64) urządzenia C1060 i S1070 osiągnęły wydajność odpowiednio 50 GFLOPS i 200 GFLOPS.
  • Procesor T10 posiada tę samą architekturę, co GT200 (karty graficzne GeForce) i GT 200GL (NVidia Quadro).
  • Urządzenie S1070 produkowane jest w dwóch wersjach różniących się częstotliwością zegara procesorów skalarnych.

Zobacz też edytuj

Przypisy edytuj

Linki zewnętrzne edytuj