Nvidia má vlastní superpočítač. SaturnV je prý nejzelenější ve výkonu na 1 watt

9

Tento měsíc Nvidia avizovala
zatím historicky nejvyšší tržby
, když za své třetí
účetní čtvrtletí přišla k tržbě 2 miliardy dolarů
(vzhledem k tomu, že mívala tříciferné kvartální
výsledky, se dá hovořit o dvojnásobném obratu proti
minulosti). Ambice firmy se zřejmě zvětšují s finančními
výsledky, protože nyní se podle všeho vrhnula do byznysu
superpočítačů. Není to ale úplně překvapivé, už v létě
při představení Tesly P100 (a čipu
GP100
), určené přesně pro tento obor, uvedla Nvidia vlastní
výpočetní servery, které jsou i základem nového
superpočítače.

Ten se jmenuje SaturnV (nebo DGX
SaturnV), což evidentně odkazuje na slavnou měsíční raketu pro
mise Apollo, ale zároveň i na „nV“ v názvu firmy
z doby, kdy si ještě jméno psala jako „nVidia“. Jde
o klastr složený z výpočetních serverů DGX-1, které
Nvidia nabízí jako originální implementaci svého výpočetního
GPU Tesla P100. To jsou stroje pro GPGPU aplikace (z nichž
Nvidia nejvíce inzeruje strojové učení a umělou
inteligenci), v kterých běží dva dvacetijádrové Xeony
E5-2698 v4 (tedy založené na nejnovější
14nm generaci Broadwell-EP
) a osm grafik Tesla P100
v kompaktním formátu. Server s maximálním příkonem
3,2 kW má 512 GB paměti RAM, RAID ze čtyř 1,92TB SSD a jako
konektivitu 10Gb/s Ethernet a 100Gb/s InfiniBand.

Klastr DGX SaturnV, superpočítač používaný Nvidií
Klastr DGX SaturnV, superpočítač používaný Nvidií

SaturnV je složený ze 125 těchto
jednotek, takže se nejedná o nějak velký superpočítač.
Ovšem díky tomu, že je založený na nové generaci FinFETových
čipů, se momentálně nachází na slušné příčce žebříčku
TOP500, podle Nvidie by měl být 28. nejrychlejší. Čím se ale
firma chlubí, je energetická efektivita, podle Nvidie servery DGX-1
nabízejí 9,46 GFLOPS na 1 watt, zatímco zatím
nejefektivnější superpočítač z červnového TOP500 nabízí
jen 6,67 GFLOPS za watt. Ten je mimochodem založený na 14nm CPU
Xeon
Phi generace Knights Landing
od Intelu, tedy úhlavním
nepříteli.

Server DGX-1 (Zdroj: HotHardware)
Server DGX-1 (Zdroj: HotHardware)

Ovšem zde je asi na místě opatrnost
(jako vždy u marketingových oslav). Tato čísla jsou
pravděpodobně pro benchmark LinPack, který ale do jisté míry
nadhodnocuje využitelný výkon výpočetních GPU (výsledné
využití je ale v tomto případě stále jen dvoutřetinové
proti teoretickým TFLOPS). V řadě jiných výpočetních
benchmarků mají ale superpočítače s GPU mnohem větší
propad reálného využitelného výkonu, než ta s CPU (k nimž
spíše patří nový Xeon Phi). Podle konkrétních výpočtů by
tak v praxi tento rozdíl mohl být mnohem menší nebo
i zmizet. Je ovšem taky třeba říci, že Nvidia systém DGX-1
primárně inzeruje na jiné použití než HPC: pro výpočty
s poloviční přesností FP16.

 

 

Reklama pro DGX-1

SaturnV Nvidia uvádí jako
superpočítač pro vlastní použití – slouží jí při
vývoji softwaru pro samořídící vozidla, simulace při vývoji
čipů, analýze defektů na waferech a jiných technologií.
Nicméně na webu, kde se tímto strojem chlubí, současně nabízí
kontakt na oddělení prodejů, pokud byste o podobný stroj
měli zájem. SaturnV tedy nemusí být tak úplně interní projekt,
ale i produkt, i když Nvidia jako nově příchozí nemůže
samozřejmě nabídnout takové zkušenosti a úroveň služeb
jako velcí zavedení výrobci. SaturnV není zas tak komplexní,
mělo by jít jen o jednodušší klastr serverů DGX-1
s InfiniBand přepínači Mellanox. Tím produktem, který skrze
tento symbol Nvidia chce prodat, jsou tak spíše právě ony DGX-1.

Server DGX-1 z čelního pohledu
Server DGX-1 z čelního pohledu

Nabízený odkaz vás také zavede na
poptávkový formulář pro tyto referenční servery Nvidie. Jinými
slovy, jako přímý dodavatel superpočítačů Nvidia zatím
funguje jen tak napůl, ale kdo ví, kam ji její ambice jednou
zavedou. Zavedení hráči jako Cray nebo IBM, kteří nyní její
GPU používají, tak možná jednou budou konfrontováni s tím,
že jim jejich dodavatel sám začne konkurovat.

Zdroje: The
Next Platform
, Nvidia (1,
2)

Ohodnoťte tento článek!

9 KOMENTÁŘE

  1. ” V řadě jiných výpočetních benchmarků mají ale superpočítače s GPU mnohem větší propad reálného využitelného výkonu, než ta s CPU (k nimž spíše patří nový Xeon Phi).”

    Hmm.: https://www.nextplatform.com/wp-content/uploads/2016/11/Phycode2.jpg

    +upozorňujem na FMA, takže pokiaľ sa kód orientuje len na sčítanie alebo len na násobenie, tak je nutné hodnoty v grafe vydeliť dvoma.

    Teda je nutné dodržať presný počet aktívnych vlákien (čo je v systémoch s nepredvídateľnými prístupmi do zdieľanej pamäte problém), presný počet inštrukcií v nich (pravdepodobne dĺžka pipeline – inštrukcie na generovanie adries…) a ten správny typ inštrukcií. Vzhľadom nato sú grafiky absolútny luxus (hardvérový sheduler, rýchla pamäť).

    A mimochodom, aby sa to nezabudlo. 😀

    “While the invention has been described with respect to specific embodiments, one skilled in the art will recognize that numerous modifications are possible. For instance, out-of-order instruction issue within a thread may be implemented if desired, e.g., by adapting out-of-order issue techniques from general-purpose processors that allow issue of any ready instruction within an “active window.” For instance, two or more instructions per thread could be loaded into buffer 510 of issuer 506 of FIG. 5. If, in some clock cycle, the oldest instruction for the thread with highest priority cannot be issued (e.g., because the destination functional unit is not ready or because an operand has not yet been collected), a newer instruction for that thread that can be issued might be selected instead.”

    Z patentov Nvidie, kto o tom chce vedieť viac, ten to bez problémov nájde. Na mňa to je písané príliš vyčerpávajúcim spôsobom. 😀

    AMD v tom bude mať väčší neporiadok kvôli veciam z procesorov, ale napríklad v manuáloch sú označené inštrukcie, ktoré nemajú ošetrené vracanie hodnôt mimo poradia.

    Ale vlastne to je celkom logické. V superskalárnych strojoch s rôznymi typmi inštrukcií (vykonávanými na rôznych jednotkách) sa musí stávať, že zatiaľ čo queue k jednej jednotke ešte čaká, tak sa objaví mladšia inštrukcia v inej v tej dobe voľnej queue.

    Napríklad kód:
    Add (latencia 1 clk)
    Load (5 clk)
    Store (5 clk)
    Sub (1 clk)

    Takže v dobe keď Sub príde na rad bude v L/S queue ešte stále inštrukcia Store, ktorá bude musieť čakať, aj keď ALU queue už bude voľná.

    Teraz je otázka, je lepšie obetovať xyz tranzistorov na to, aby sa takým prípadom zabránilo (aj za cenu poklesu výkonu), alebo bude lepšie pripustiť, že sa také situácie stávajú, a ošetriť to v neskoršej fáze pipeline (minimálne reorder buffer tam musí byť v oboch prípadoch), alebo aspoň nato upozorniť programátorov.

    Ešte dodám, netvrdím že jedno vlákno GPU = jedno vlákno Skylake, to určite nie. Ale myslím že 1 SM ~ 1 CPU jadro môže byť celkom blízko realite.