Intel vstupuje do ray tracingové grafiky. Vydal vlastní AI denoiser, je open source

38

Vykreslování počítačových her pomocí ray tracingu (přes DXR, součást DirectX) bude patrně hlavním GPU tématem letošního roku díky tomu, že Nvidia loni na podzim vypustila grafiky GeForce RTX s architekturou Turing, uvádějící tuto technologii. Zdá se, že s ray tracingem počítá také Intel, který vstoupí na trh samostatných GPU – snad včetně výkonných herních modelů – příští rok. A firma nyní představila vlastní řešení jedné z komponent, kterou „RTX“ u Nvidie využívá.

Touto komponentou je odšumovač neboli denoiser. Odšumovací filtr je totiž dnes trik, používaný k zvýšení výkonu ray tracingu, jenž je neobyčejně žíznivý na výpočetní prostředky. Pokud nemáte pro rozlišení výstupního obrazu dost výkonu, aby se na každý pixel analyzovalo větší množství paprsků, trpí totiž obraz chybami projevujícími se jako zrnitost, vizuální šum (viz článek o uvedení karet GeForce RTX). Protože by zvýšení počtu paprsků, které by tento efekt potlačilo, stálo příliš mnoho výkonu, požívá Nvidia trik. A sice odšumovací filtr, který odstraňuje (či možná lépe řečeno vyhlazuje či maskuje) šum. Je to podobné jako denoising videozáznamu nebo fotografie. Výsledný obraz sice nemá tolik detailů, jako by měl při „nativním“ plném rozlišení, ale neobsahuje rušivé artefakty a tudíž vypadá dobře.

AI denoiser pro ray tracing od Intelu

A právě takovýto filtr nyní představil Intel pod označením Open Image Denoise Library. Jeho úlohou je taktéž vyhlazování zašuměných ray tracingových snímků a lze se domnívat, že eventuálně by mohl rovněž skončit jako součást implementace ray tracingu v počítačových hrách v reálném čase. Stejně jako u Nvidie jde přitom o „AI“ filtr na bázi neuronových sítí. Nejde tedy o nějaký konkrétně definovaný algoritmus, ale o natrénovanou neuronovou síť, která využívá toho, že umělé inteligence tohoto typu se dají vycepovat k řešení nejasně definovaných úloh tohoto typu. Trénování je patrně stejné jako u Nvidie: pomocí korpusu tvořeného páry kvalitních obrazů a jejich horší zašuměné verze. Síť se učí odvodit z nekvalitní verze výsledek, který se podle nějakých metrik co nejvíce blíží ideálnímu kvalitnímu snímku. Hotová síť se pak aplikuje při reálném použití na aktuální výstup ray tracingového rendereru.

Obrázek z demo galerie Intel Open Image Denoise

Pokud si chcete udělat představu o tom, jaký efekt má filtr, má Intel pěknou interaktivní galerii, kde lze porovnat zašuměný vstup a filtrem vylepšený výstup. Údaj o „spp“ znamená, kolik vzorků bylo pomocí ray tracingu vypočítáno pro jeden pixel hotového obrázku. Scéna Art Deco na konci tedy používá 2048 paprsků na bod a přesto trpí šumem.

Práce pro AVX-512 a mnohajádrová CPU

Rozdíl u Intelu je, že pro běh filtru nejsou použity speciální akcelerátory jako tensor jádra u Nvidie, byť jejich zapřažení v budoucnu asi není vyloučené. Uvidíme, třeba Intel také integruje nějakou „NPU“ do svých budoucích CPU a GPU, má pro to technologie v podobě IP MovidiusNervana. Intel Open Image Denoise místo toho teď běží na CPU. Využívá pro akceleraci SIMD (vektorová) rozšíření AVX2 a dokonce AVX-512, které by tak touto cestou mohly být využity ve hrách. A tento filtr by asi také dokázal dát práci velkému množství jader CPU. Neuronové sítě by totiž měly být vysoce paralelizovatelnou úlohou.

Minimálním požadavkem jsou podle Intelu alespoň instrukce SSE4.2 (které umí CPU od Nehalemu a u AMD od Bulldozeru), které ale neposkytnou tolik výkonu. V popisu softwaru je uvedené, že jsou podporovány procesory architektury „Intel 64 a kompatibilní“, takže by tento denoiser měl fungovat i na procesorech AMD (případně VIA/Zhaoxin).

Open source

Důležité zde je ještě jedno: jedná se o open source kód, který tedy bude možné vylepšovat, případně na něm stavět další projekty tohoto typu. Intel jej uvolňuje pod permisivní licencí Apache 2.0; zda či jak jsou uvolněné také korpusy dat pro nezávislé vytrénování koeficientů sítě (bez nichž nemůžete trénování sami přesně zreplikovat), ovšem nevím. Open Image Denoise také jinak staví na komponentě Intel Math Kernel Library for Deep Neural Networks (MKL-DNN), i ta je otevřena pod licencí Apache 2.0. Momentálně je kód denoiseru ve verzi 0.8.0 odpovídající stádiu beta. Intel jinak tento filtr oznámil již před časem v kontextu Hollywoodského filmového ray tracingování s knihovnou Intel Embree, ale až nyní vydaná verze 0.8.0 je první, která byla uvolněna veřejně.

Momentálně asi tento software bude používán spíše pro offline rendering a vizualizace, ostatně Intel ještě aspoň rok do výkonné herní grafiky nezasáhne. Až se tak ale stane, bude možná Open Image Denoise nebo jeho evoluce ve hrách použita k implementaci DXR – uvidíme.

Intel vstupuje do ray tracingové grafiky. Vydal vlastní AI denoiser, je open source
Ohodnoťte tento článek!
4.7 (93.08%) 26 hlas/ů

38 KOMENTÁŘE

  1. Tak nvidia/intel aj nové konzoly podporujú či budu podporovať RT. Asi to teda nebude až tak slepá vetva či nepotrebná featurka ako sa nám tu niekto snaží nahovoriť. Len je to imho zatial predražené …

    • Trochu logiky do těch vašich snů prosím. Konzole RT hned tak podporovat nebudou. Problém je cena. Dnešní GPU které slušně zvládá RT stojí jako celá konzole. Myslím že MS a ani Sony nestojí o propady prodejů jako se to stalo NV, zvláště když do toho předtím napumpovaly tolik peněz. Navíc světová ekonomika zpomaluje a lidi budou ve výdajích opatrní.

      • O tom v posledních dnech šly články že se o implementaci uvažuje

        Nové konzole tady budou nejdříve příští rok, ne li snad až 2021. Tzn bude to jiný HW než tu máme dnes. Teoretický výkon min u XBOXu bude atakovat dnešní highend, byla řeč o 12TFlops. Konzole jsou dotované, není na nich přímý zisk = nulové neli záporné marže, ceny čipů stlačené na minimum, to se nedá porovnat s cenou grafické karty.

        Další věc je uzavřená platfroma bez velkých HW odlišností (dnes už přeci jen máme drobné rozdíly ve výkonu konzolí stejného vendora) a možné optimalizace na míru konkrétní konzole (proto taky nechápu ty nesmyslné tvrzení že vývojáři vyvíjí na konzole a proto AMD HW v PC bude lepší, realita je, že díky optimalizaci na tělo to nejde aplikovat na PC)

      • dalsi konzole zrejme RT prinesou v castecne podobe treba na zrcadlici se plochy, coz je pro RT to nejsnazsi (pocita se pomoci RT treba jen jedna vrstva z tech treba 30 co tam jsou, zbyle normalne rasterizace), a hybridne pak minimalne u Xboxu ma jit RT pocitat cloudem, MS totiz zrejme uvazuje o dvou konzolich, bezne ktere si vystaci jen se svym HW + moznosti zapnout vypocty z cloudu a pak levnejsi ktera bude mit slabsi HW a bude spolehat na vypocty z cloudu

      • jasně, nebyt nVidie a její GeForce 256, tak dodnes hrajeme na ATInách 640×480. AMD hejtři, už zase kopou do intelu. Fakt by mě zajímalo kdyby to konečně AMD prodalo Samsungu tak bych se pochcal smíchy.

          • Nepochopil jsi, že já proti RT jako takovému nic nemám? Jsem kritický k amatérskému pinožení se za takzvaným raytracingem.

            Kromě toho, Su prohlásila AFAIK, že RT zatím ne, a nasadí jej, až to bude dávat smysl.

            • Ne až to bude dávat smysl, ale až to prý zvládne lowend.
              No a proto na tom už usilovně makají.

            • Jenže tady zase skončíme, protože pro AMDisty je low-end pokaždé něco jiného podle toho co se hodí. Nejčastěji je RX550 mainstream a RTX2060 high-end.

            • Myslím si, že Su ani nemohla nič iné prehlásiť, keďže ich HW danú podporu nemá. A je úplne jedno či ide o RT alebo by išlo o niečo iné.

            • HWspeedy: na lowend kašlu. Můj názor je, že to musí dávat lepší výsledky než klasická rasterizace, a to znamená, že smysl má jen “full” RT.
              Ale čistě objektivně musím dát Su za pravdu. Ono to totiž znamená, že bys musel engine hry a veškeré textury apod. dělat v podstatě dvakrát, jednou pro rasterizaci, podruhé pro RT, takže čistě prakticky se RT prosadí opravdu až tehdy, kdy jej bude jakžtakž zvládat alespoň vyšší lowend.

            • textury 2x určitě ne, dnes je běžné PBR a textury v sobě nesou vše podstatné pro RT – typ materiálu, jeho reflexní vlastnosti.

              Zbytek bude víc parametrizace, ale samo je to práce navíc, o tom žádná, rozhodně ji ale není tolik, postupně jak se bude obměňovat HW a RT bude mít většina mainstreamu pak bude možné některé věci z rasterizace vypustit a přenést do RT, prostě tam rasterizace nebude umět třeba AO a stíny, které se zdají při RT méně náročné než reflexe (viz třeba enlisted), tím se ušetří různé fake zdroje světla, dvojí renderování atp. Majitelé low endu sice ostrouhají, ale ti strouhají už teď

            • tynyt 30.1.2019 at 19:24 : “veškeré textury apod. dělat v podstatě dvakrát, jednou pro rasterizaci, podruhé pro RT”
              Tak to jooo a tenhle tydýt o mě bude říkat, že jsem debil. Tak to joooooo diit forever!!!!!

    • Neřeším jestli RT jo nebo ne, ale jenom protože se o to zajímá pár společností nic neznamená. Nebo snad máš doma 3D televizi? A nemyslím tím CRT. Do toho se taky pumpovalo, všechny fillmy ve 3D, všechny BluRay ve 3D. A dneska je to mrtvý. RT tak asi nedopadne, jde jen o výkon, ale to že je kolem něčeho zrovna hype neznamená, že to bude úspěch. Zkus se nad tím zamyslet.

            • Pochopení psaného textu je očividně taky velký problém, jak vidím. Zkus ovládnout alespoň učivo základní školy a pak se vrať.

          • nehádat se , nehádat se …nehádat se prodejní čísla mluví za vše a u karet by výkon musel na RT narůst brutálně ,aby si s highend kartu mohl hrát ve 4 K a cena by byla brutální. Takže jak tvrdí AMD RT bude na pořadu dne, až to zvládnou i karty nižší třídy. …..jo a ještě jsem chtěl tedy naposledy nehádat se 🙂

      • tak 3D televize s sebou nese například nutnost brýlí, ne každý chce mít při sledování TV nějaké brýle na očích, někdo s vadou zraku může mít se sledováním 3D obrazu problém. Je to asi jako VR, tohle taky není pro každého.

        RT je standard používaný v počítačové grafice desítky let, všechna CGI filmová produkce jede RT, nepředstavitelné aby to dělali jinak, jak padlo, je to jen otázka výkonu, nemyslím si že bude kdokoli nadávat že má realističtější grafiku ve hře, naopak, je to žádané

    • Vlko, skus citat s porozumenim. Intel to ide robit cez AVX2, ktore uz AMD davno ma. Naopak, 16 jadrovy Ryzen dava este vecsi zmysel 🙂

      Pre AMD je naopak vyhoda, ze pouziva chiplety v novych Ryzenoch a zrejme ich bude pouzivat aj v novych generaciach hernych konzol.

      Takze naopak, nVidia ma problem, lebo RT jadra nestihaju a raytracing na RTX grafikach vyrazne znizuje vykon.

      • RT sníží výkon, ale to sníží i zvedání detailů rasterizace, je logické že kvalitnější efekt (a teď se nebavím o líbivosti ale o technickém provedení efektu) chce více a více výkonu a rozhodně to nejde lineárně, potřeba výkonu stoupá výrazně více než kvalita. Výhoda je že si člověk může vybrat, a vybrat si může i dnes při běžné rasterizaci

    • Nebo může naopak naskocit do vlaku, ze ktereho Nvidia vystoupila. Dodat na trh GK či dvě (cenově dostupné), které se postarají o 2x 4K@90fps pro VR. Headsety této kvality se již na trhu objevují a bylo by fajn mít je čím nakrmit. Dvě RTX2080Ti podmínku cenové dostupnosti moc nesplňují a technika omezování kvality renderingu mimo zorné pole je jen zdržující výlukou na trati do cíle.

      • vr je dost specifická záležitost, není to vhodné pro každý herní žánr, problém dělá hlavně ovládání, další problém je ergonomie, mít headset na hlavě může leckomu vadit, případně prostorová náročnost pokud jde i o nějaké pohybové ovládání