Nvidia před několika dny představila neuronovou kompresi textur NTC, nyní tu máme něco podobného od Intelu: Texture Set Neural Compression (TSNC).
Zdá se, že neuronová komprese textur se stane velkým tématem. Společnost Nvidia nedávno představila systém NTC, kde lze dosáhnout až 85% úspory, podobně tak představuje obdobnou technologii Intel. Jeho Texture Set Neural Compression (TSNC) by měl být systémem, který posune dál schopnosti komprese ve srovnání s tím, co zvládají BCx metody.
TSNC je natrénovanou neuronovou sítí, která se ve výsledku snaží u textur najít shodné struktury, které nemohou najít běžné kompresní metody a které by mohly pomoci k vyšší úrovně komprese.
Intel připravil dvě různé varianty, a to variantu A, která např. ze 4K vstupu vytvoří dva 1:1 (4K) a dva 1:2 (2K) latentní obrazy, zatímco varianta B je agresivnější a vytvoří po jednom 1:1 (4K), 1:2 (2K), 1:4 (1K) a 1:8 (0,5K) obrazu.
Varianta A byla vyzkoušena na 1K, 2K i 4K texturách a všude dávala lepší výsledky než BCx komprese. Zatímco BCx přinesly 4,79-4,8krát kompresi, TSNC se dostala na 9,53-9,59násobek. Komprese je tak vůči tradičním BCx kompresím asi 2krát výkonnější. Podle analytického nástroje Nvidia FLIP je perceptuální ztráta kvality asi okolo 5 %.
Varianta B je v kompresi díky využitím menších latentních obrazů výkonnější a navyšuje ji na 17,85-18,05násobek. Stinnou stránkou je ale ještě o trochu výraznější perceptuální chyba 6-7 %, tedy už pro uživatele občas viditelná.
Intel umožňuje čtyři různé strategie nasazení.
- komprimované doručení, úspora na disku a při přenosu
- komprimované na disku, dekomprimace do VRAM (úspora při přenosu do VRAM a instalaci, ale už ne na grafice)
- textura je komprimovaná ve VRAM, dekomprimuje se při použití, zpomaluje inferenci
- textura je ve VRAM vždy komprimovaná, dekóduje se na pixelové úrovni (texture je stále komprimovaná), největší dopad na inferenci
Intel zkusil také dopad na výkon. Pokud algoritmus běžel přes FMA na procesoru Intel Core Ultra X7 358H, pak na pixel potřeboval 0,661 ns (FMA se dá použít na ne-Intel GPU nebo CPU bez XMX jednotek). Moderní GPU Intelu ale mají XMX jednotky a v takovém případě čas spadl na 0,194 ns na pixel.