Nový Titan X není herní karta, výpočty v Int8 podporuje rychleji než GP100
V poslední době došlo k ohlášení nového Nvidia Titan X s jádrem GP102 a 3584 stream-procesory, následně k profesionální verzi Quadro P6000, která potvrdila, že počet stream-procesorů jádra GP102 dosahuje 3840 a nakonec i Quadro P5000 s jádrem P5000. Určité informační nejasnosti vedly k vzájemnému srovnávání produktů, jejich parametrů a k odhalení několika zajímavostí.
Pascal GP102, Nvidia Titan X
V první řadě jde o Nvidia Titan X. Jak potvrdily specifikace Quadro P6000, není nový Titan X osazen plně aktivním jádrem, 256 stream-procesorů je neaktivních. K využití jich nabízí 3584, fyzicky je však vybaven 3840.
Druhá zajímavost se týká cílového uživatele. Nejedna webová stránka při vydání o Nvidia Titan X hovořila jakožto o herní grafické kartě. Podobně kupříkladu Anandtech, který poznámku u herním nasazení vyškrtnul, protože ho záhy Nvidia upozornila, že primárním cílem Nvidia Titan X nejsou hráči, ale výpočetní nasazení pro formáty FP32 a Int8.
FP64, FP32, FP16 a Int8: GP100 vs. GP102 vs. GP104
Zdůraznění výpočetního nasazení v souvislosti s přesností Int8 využívanou algoritmy strojového učení bylo docela překvapením. Nemělo toto být doménou výpočetní jádra GP100, respektive Tesly P100? Nyní se ukazuje, že to skutečně její doménou není. Přestože Nvidia v řadě prezentací o architektuře Pascal o rychlé podpoře Int8 v souvislosti se strojovým učením hovořila, právě výpočetní jádro GP100 a jím osazená Tesla P100 jí nedisponuje, končí u rychlé podpory FP16.
Naopak herní GP102, kterou je vybavená například nová Nvidia Titan X, nedisponuje rychlou podporou FP16, ale právě Int8. Schéma (FP64:)FP32:FP16:Int8 = (0,5:)1:2:4 tedy není pro architekturu Pascal nativní - alespoň prozatím neexistuje žádný produkt, který by jej v této konfiguraci podporoval. Buďto je přítomna podpora pro FP32:FP16 v poměru 1:2, nebo FP32:Int8 v poměru 1:4.
Nvidia Tesla P100 | Nvidia Titan X | Nvidia GeForce GTX 1080 | |
---|---|---|---|
jádro | GP100 | GP102 | GP104 |
plocha | 610 mm² | 471 mm² | 314 mm² |
FP64 | 1:2 | 1:32 | 1:32 |
FP32 | 1:1 | 1:1 | 1:1 |
FP16 | 2:1 | 1:64 | 1:64 |
Int8 | podpora neuvedena | 4:1 | podpora neuvedena |
Údaje v tabulce jsou vztažené k výkonu v FP32 (takže tento řádek je vložen jen pro úplnost). Je zřejmé, že zatím žádný produkt z generace Pascal nenabízí rychlou podporu pro všechny formáty. U Tesly P100 (resp. jádra GP100) je to obzvlášť překvapivé vzhledem k inzerování karty jakožto produktu pro strojové učení a neurální sítě. Na druhou stranu oficiální stránka produktu je koncipována poměrně výmluvně a byť první odstavec úvodního textu o umělé inteligenci explicitně hovoří, žádná z vět není vztažena konkrétně k Tesle P100. Název produktu je zmíněn až ve větě, která o něm hovoří jakožto o nejpokročilejším akcelerátoru pro datová centra, což už je poněkud jiný typ nasazení.
V praxi to znamená, že i v rámci výpočetního světa bude mít každý produkt (GP100/GP102) odlišné nasazení a každý bude vyžadovat rozdílný kód. To je zatím v rámci jedné generace výpočetního hardwaru Nvidia unikátní jev.