Nvidia Turing: nové technologie pro chytřejší rendering | Kapitola 2
Seznam kapitol
Dnešním dnem končí embargo na detaily k nové architektuře Turing a podrobnosti o nových funkcích, které karty nabízejí. Asi jen s málokterou premiérou za celou dobu historie grafických 3D akcelerátorů představili výrobci karet tolik nových technologií najednou.
Nové Streaming Multiprocesory
Turing přichází s přepracovanými streaming multiprocesory Turing SM, které dosahují výrazného nárůstu výkonu. Oproti Pascalu by měly mít o 50 % vyšší výkon. Zásluhu na tom mají hlavně dvě klíčové změny v architektuře.
První změnou je další přidaná datová cesta, díky níž mohou běžet souběžně celočíselné výpočty i výpočty s plovoucí desetinnou čárkou, zatímco u Pascalů se oba typy výpočtů vzájemně blokovaly.

Na jeden tedy TPC připadají dva streaming multiprocesory. Každý z nich má 64 jader pro FP32 a 64 jader pro INT32. Pascal GP10x měl naproti jen jeden streaming multiprocesor a v něm 128 jader pro FP32. U Turingu už mohou běžet výpočty FP32 a INT32 souběžně a SM mají nezávislý scheduling vláken podobně jako čipy Volta GV100.
Uvnitř každého Turing SM je rovněž osm Tensor Cores schonpých provádět různé typy výpočtů a jedno RT Core pro Ray Tracing.
Turing SM je rozdělený do čtyř bloků. V každém z nich je 16 jader FP32, 16 jader pro INT32, dvojice Tensor Cores, jeden warp scheduler a jedna dispatch jednotka. Každý blok má ještě novou instrukční cache L0 a 64KB registr.
Všechny čtyři bloky sdílejí 96KB paměti kombinující L1 cache a sdílenou pamět. Při tradiční grafické zátěži se 64 KB využito jako paměť pro grafické shadery a 32 KB slouží jako texture cache a register file spill area. Při výpočtech může být rozdělená na 32 KB sdílené paměti a 64 KB L1 cache, anebo na 62 KB sdílené paměti a 32 KB L1 cache.
Schéma jednoho streaming multiprocesoru vypadá takto:

Tou druhou změnou navyšující výkon streaming multiprocesorů je přepracovaná paměťová cesta v SM, která unifikuje sdílenou paměť, cache pro textury a memory load caching. Při běžné zátěži se to projeví dvojnásobným nárůstem její propusnosti a dvojnásobkem dostupné L1 cache.
