Lepší kvalita DLSS: ve hře Control má Nvidia temporální stabilizaci proti shimmeringu

90
Nvidia DLSS Control ilustrace 1600

Když Nvidia přišla u grafik Turing s uspcalingem DLSS pomocí neuronových sítí běžících na tensor jádrech, kdy grafika počítá snímky na nižším než nativním rozlišení a tím může mít vyšší snímkovou frekvenci (výkon), mělo to i své stinné stránky, například rozmazání textur. Ovšem jak jsem tu tehdy říkali, to tak nemusí být, neuronová síť se dá trénovat k různým efektům. A vypadá to, že by Nvidia teď mohla DLSS vylepšit, aby se podobné projevy zmírnily a kvalita stoupla. Už ve hře Control by nyní měla být nová verze DLSS, která některé z vyvíjených změn obsahuje.

 

DLSS dostává temporální fungování

Nvidia uvádí, že do Control se dostaly některé funkce, které Nvidia měla zatím jenom v experimentálním stádiu. V blogpostu k těmto změnám (kde mimochodem také DLSS přirovnává k tzv. Super Resolution algoritmům pro upscaling videa) není příliš mnoho technických podrobností, ale zdá se, že Nvidia do DLSS přidává temporální stabilizaci, zatímco v předchozích titulech je DLSS zřejmě „spatiální“ filtr (tedy fungující vždy izolovaně na jednom snímku).

Temporální fungování je odpověď na určité problémy, které má upscaling prováděný jen v na úrovni jednoho snímku tehdy, pokud se obraz hýbá. Upscaling obecně má riziko určité nestability výstupu, čímž se míní, že relativně drobné odlišnosti ve vstupu mohou způsobit zesílenou variabilitu v upscalovaném obrazu. Například pohybující se objekt může kvůli této nestabilitě v po sobě následujících snímcích vést k různě vypadající interpolaci, byť v originále se nijak zvlášť nemění.

Je to proto, že upscaling vždy pracuje jen s jedním snímkem izolovaně a jednotlivé instance si nemohou obrazně řečeno „srovnat výsledky“ pro jednotlivé snímky. Výsledkem mohou být efekty, kdy se objekt trošku mění, pulzuje nebo vytváří podobné nepříjemné jevy, které se dostavují například u objektů pomalu plynule se pohybujících po obrazovce. Nejsilnější je tento efekt u ostře vykreslených předmětů, nebo geometrických obrazců, ale způsobuje ho i šum v obraze. Anglicky se někdy mluví o shimmeringu nebo flickeringu.

Ovšem se zapojením temporálního rozměru, tedy přihlédnutím k sousedním snímkům, se tomuto efektu dá předejít (obrazně řečeno si nyní instance DLSS zpracovávající jednotlivé snímky mohou výsledek porovnat a sladit). Jak to přesně funguje není sděleno, ale pravděpodobně zde dochází k určitému vyhlazení objektů pomocí temporálního filtrování/stabilizování jejich detailů. Toto zprůměrování se při filtrování videa často používá k potlačení šumu, ale zde by paradoxně mohlo obnovovat detaily, které spatiální DLSS rozmazávalo. A to díky tomu, že temporální algoritmus je může najít v po sobě následujících snímcích, a tím je zachovat coby detail, zatímco spatiální algoritmus je může považovat za šum a odstranit je.

DLSS v Control

Nvidia tento původně experimentální algoritmus (respektive soustavu algoritmů a neuronových sítí) upravila a zjednodušila, aby mu k běhu stačilo menší množství výkonu, dostupné při hraní hry na GPU Turing, což umožnilo ho použít v upscalingu DLSS. A Control je asi zatím první hra, která tuto novou verzi má.

Nvidia efekt tohoto temporálního stabilizování ve hře Control ukazuje na následujícím videu při upscalování hry vykreslované v rozlišení 1280 × 720 na rozlišení 1920 × 1080 bodů. Proti běžnému škálování snímků v enginu (kdy by měl asi být použitý nějaký standardní algoritmus) vlevo je na videu vpravo upscaling pomocí DLSS s temporální stabilizací. Rozdíl je vidět třeba na pohybujícím se culíku nebo na liniích dlažby (to jsou ty geometrické obrazce).

Rozdíl je sice ukázán proti normálnímu upscalingu v enginu hry, ale onu temporální nestabilitu by asi vykazovalo i spatiální DLSS. Typicky totiž právě sofistikované a relativně agresivní algoritmy, které neprovádějí jenom běžné škálování, ale také interpolují a ostří jako DLSS, vytváří větší rozdíly na výstupu proti vstupu, takže také mohou vést k větším nesouhlasu (temporální nestabilitě) mezi jednotlivými snímky. Nová verze s temporálním fungováním ovšem proti tomuto bude odolná.

Pro kvalitu by toto mělo být docela plus, i když tensor jádra a případně shadery, pokud jsou použité, možná budou mít víc práce (temporální filtrování by mělo používat pohybové vektory, není to tedy plně jednoduchá věc). Je zde také asi možnost, že se s takovýmito filtry trošku zvýší latence hry, protože bude potřebovat pro fungování buffer snímků. Při temporálním zpracování videa se typicky používá jeden následující a jeden předcházející sousední snímek, což by vedlo k lagu navíc. Nvidia by teoreticky místo toho mohla používat třeba dva snímky z minulosti, což by se tomuto vyhnulo, ale asi zase bylo méně spolehlivé.

Galerie: starší forma DLSS ve hře Anthem, 4K snímky


Pro další zlepšení je pořád prostor

Nvidia uvádí, že toto temporální vyhlazování či stabilizování není úplně všemocné a v některých situacích může selhávat. Zatímco by mělo dobře sedět situaci, kdy se po scéně pohybují nějaké objekty, při jejich transformování to už tak dobře fungovat nebude – například plameny nebo jiskry kompenzace pohybu a temporální filtrování moc dobře nepodchytí, což lze vidět na hodně změněném vzhledu na následujícím videu od Nvidie (tipuji, že další podobné případy by mohla být blikající světla nebo záblesky a měnící se barvou světla).

Nicméně toto by se možná dalo dál vylepšit nějakou adaptivností, kdy by se temporální vyhlazování v určitých případech nepoužilo a části obrazu tohoto typu byly zpracovány čistě spatiálně. Tento problém není nic nového, objevuje se třeba i při temporálním filtrování video. Nvidia každopádně uvádí, že na kvalitě upscalingu (Super Resolution) pomocí neuronových sítí bude dál pracovat, a to asi nejen pro DLSS, ale i pro další aplikace.

Referenční experimentální model, na kterém je temporální DLSS založeno, má mnohem vyšší kvalitu, ale asi při tom vyžaduje vyrazně vyšší hardwarové prostředky a nefungoval by v reálném čase. Ovšem se zvyšujícím se výkonem by se mu postupně příští generace mohlo trochu přibližovat. Pro ilustraci Nvidia vytvořila další video (jde o demo Unreal Enginu 4), kde máte vlevo temporální upscaling pomocí zjednodušené verze z Control („Image Processing Algorithm“) a vpravo pomocí onoho experimentálního modelu („AI Research Model“), který má mnohem lepší podání poletujících jisker, kdežto DLSS je bohužel dost vyhlazuje. Máme to sice filtrováno skrz kompresi Youtube, která také podobný detail má tendenci decimovat, ale rozdíl je docela velký.

Lepší kvalita DLSS: ve hře Control má Nvidia temporální stabilizaci proti shimmeringu
Ohodnoťte tento článek!
4.1 (81.82%) 11 hlas/ů

90 KOMENTÁŘE

      • Moc jsem tomu nedal, dohrávám teď hry které čekají ve frontě rozehrané už delší dobu, a času na to jsem si moc neudělal, ale za těch pár hodin… ano je to fajn, přiměřeně akce kobinované s prolízáním kdečeho, pročítáním posbíraných collectibles… Než procházením příběhem se ale kochám “krajinkou”

    • Správná otázka není kde je DLSS, ale který obrázek je hezčí 🙂 a pak odkrýt a zjistit reálný názor lidí bez zaujetí.

      Snímek vlevo je víc rozmazaný, ale má lepší vyhlazování hran. Osobně bych se nespokojil s ani jedním obrazem a vyzkoušel bych použít SMAA (režim depth detection, pokud hra podporuje) na vyhlazování hran a CAS (možná i Clarity) jako sharpening filter (všechno dostupné v Reshade) – a na základě toho, zda CAS zvládne obnovit ostrost levého snímku nebo zda SMAA zvládne vyhladit hrany pravého snímku, bych se pak rozhodnul.

      Jinak až odkryjete který snímek je který, zajímalo by mě použité rozlišení obou snímků (z jakého na jaké rozlišení se upscalovalo) a jaký výkon obě metody podávají).

      • Vlevo je nativní 2560×1080, zvětšený výřez na 150%
        Vpravo je DLSS 1707×720 do nativního, opět zvětšeno.

        Při zapnutí DLSS se vypíná MSAA, vlevo je 4xMSAA, v pravo jen DLSS.

        Vlevo hra běží v průměru řekněme 45 FPS – rasterizace i RT na max. Vpravo běží typicky 65-70 FPS, opět plná rasterizace+RT, tady ale chybí MSAA který se automaticky vypne a nejde zapnout.

      • S RTX2080Ti bych myslím mohl. 2070S je dost pod 60FPS, což je ale má cílová hodnota na kterou se chci dostat za každých okolností. 45-50FPS byť HW synchronizované mi nesedí, poznám že se frametime mění, jsem zvyklý hrát na konstantních FPS, tzn. těch 60 nahoře je ideálně minimim, průměr i maximum.

        Po optimalizaci nastavení bych se na těch 60FPS bez DLSS dostal, ale nebudu si kazit herní zážitek. DLSS možná není 100% ale pro 60FPS native bych potřeboval vypnout contact shadows a indirect lighting nebo oba typy odrazů. Při hraní rozdíl DLSS vs native nepoznám, rozdíl mezi chybějícím RT a rasterizací ano.

  1. “Referenční experimentální model, na kterém je temporální DLSS založeno, má mnohem vyšší kvalitu, ale asi při tom vyžaduje vyrazně vyšší hardwarové prostředky a nefungoval by v reálném čase. Ovšem se zvyšujícím se výkonem by se mu postupně příští generace mohlo trochu přibližovat.”

    V originálním článku [1] ale píšou trochu něco jiného:
    “Our next step is optimizing our AI research model to run at higher FPS. Turing’s 110 Tensor teraflops are ready and waiting for this next round of innovation. When it arrives, we’ll deploy the latest enhancements to gamers via our Game Ready Drivers.”

    Oni ten lepší model plánují nasadit už na současnou generaci. Tím se v podstatě zvyšuje hodnota Turingu během životního cyklu. To je celkem zajímavé… 😎

    [1] https://www.nvidia.com/en-us/geforce/news/dlss-control-and-beyond/

    • Ono je v originalnim clanku mnohem vic veci “jinak”. Treba se tam nikde nemluvi o tom, ze se najednou z DLSS stava temporalni sit. DLSS uz temporalni davno je. Pouze ze zjistili, ze diky nekterym temporalnim artefaktum, ktere by jinak odstranili jako chybu (doslova “bug”) dokazou stavajici obraz vylepsit. Ostatne, udelejte si obrazek sami (dporocuju precist puvodni clanek cely):

      “During our research, we found that certain temporal artifacts can be used to infer details in an image. Imagine, an artifact we’d normally classify as a “bug,” actually being used to fill in lost image details. With this insight, we started working on a new AI research model that used these artifacts to recreate details that would otherwise be lost from the final frame.”
      https://www.nvidia.com/en-us/geforce/news/dlss-control-and-beyond/

      • V originálním článku není řečeno prakticky nic konkrétního, proto se musím domýšlet, o co tam jde. Tady ten citát říká co o technickém fungování? Prakticky nic, teda pokud nechcete dělat závěr, že je to nějaká magie, které smrtelník nerozumí…

        Čekal bych, že vám trošku srazí hřebínek, že se v tom videu doslova říká, že při DLSS na 1920 × 1080 vykresluje grafika při rozlišení 1280 × 720 bodů a pak se toupscaluje. Teda přesně to, co jste tu v debatách pod předchozíma článkama za Boha tvrdil, že se rozhodně neděje a někde ve videu z keynote se v básnickém obrazu tam a tam rozhodně říká něco úplně jiného. Takže velká záruka toho, že teď určitě přesně víte, o čem mluvíte 🙂

        Ten váš citát je něco podobného – 1. marketing to nějak podává, přičemž se snaží být netechnický pro běžné publikum (a asi zároveň chce, aby to znělo zajímavě), ale je to naprosto nekonkrétní. Z toho, jak to v Controlu funguje proti shimmeringu (a téhle zmínce o temporálním fungování) se ale dá dovodit, jak to asi funguje, což jsem v tomhle článku udělal. Je to částečně na základě zkušeností z oblasti filtrování videa, což ale nakonec je přesně to, co se tu dělá.
        2. Pozor na to, že ten citát je o tom AI experimentálním modelu, ne o DLSS.

        • “že se v tom videu doslova říká, že při DLSS na 1920 × 1080 vykresluje grafika při rozlišení 1280 × 720 bodů a pak se toupscaluje”
          Kde se tam rika neco u upscalovani? V zadnem z tech videi v clanku nic takoveho neni. Tam se jen uvadi zakladni rozdliseni a vystupni po zpracovani DLSS.

          Ten citat je o experimentalni modelu, ktery zacali stavet, kdyz zjistili, ze jiste temporalni artefakty se daji vyuzit k vylepseni obrazu. Je tam podstatna ta cast “temporalni artefakty, ktere by normalne klasifikovali jako chybu”. Normalne = DLSS.

          Vymlouvat se opet na marketing a pak to zavrsit: “proto se musím domýšlet, o co tam jde.” je opravdu usmevne. Vsechno co rikaji zdroje Nvidie je jen marketing. Huangova keynote je marketing, nescetne Nvidia blogy jsou marketing, Nvidia whitepaper je marketing. Jen Jan Olsan vi, jak to funguje.

            • Maudite, ono nepujde o ‘upscale’..pujde o magicke zvetseni :))
              Ty jsi demagog..

            • aha.. a co znamena slovo ‘upscale’ v anglictine asi?
              A ten objekt ktery bude mit v 720p placnu treba 4x4pixely, tak v tom 1080p ho magicky autoencoderujes na treba na 6×6 pixelu..tak to neni ‘upscale’? Nebo chces rict, ze ty objekty v 720p se renderuji 6×6 rovnou?

            • Maudite, opravdu si myslíš, že nVidia používá nějakou skrytou magii? Že nevychází z toho, co se kolem neuronových sítí a jejich použití na zpracování/vylepšení obrazových informací událo v posledních letech? Najdi si prosím nějaké odborné publikace k tématu, často stačí i abstrakty, nebo případové studie (po netu se toho válí hromada), zjistíš, že se v nich v souvislosti s autoenkodéry a se zpracováním obvykle skloňuje upscaling jako jedna z metod mixu technik k získání výsledku.

            • @mikymauz
              Hoj tak jak jsi dopadl s novym RYZENem? 🙂 Stacil te chladic?

            • @Kochren
              Není čas 🙂 Zatím jsem stačil nainstalovat systém a ověřit základní funkčnost. K nějakým zátěžovým testům se dostanu nejdřív příští týden.

        • Tak radši nedomýšlej, to je cesta do pekla.

          DLSS by nevyhlazovalo to, co vyhlazuje, kdyby to bralo data jen z jednoho snímku. Ve starších implementacích by to neredukovalo shimmering, ale ono ho to redukovalo i tam. A taky by to tolik nemazalo obraz, kdyby to bralo data jen z jednoho snímku. V dnešní době, kdy je nejpoužívanější metoda vyhlazování TAA, by bylo od Nvidie na palici, kdyby se u algoritmu vyhlazování rok omezovala jen na jediný snímek.

          Mrkni na video z F1 2019, kde byla ta implementace DLSS zmršená. Ten obraz by se takto nemazal, kdyby to dělalo DLSS jen na jednom snímku.

          https://www.youtube.com/watch?v=m5jTStG0HwA

          • Ahoj Dal ses na cestu poučného boje na ostatních webech? 🙂 Na Diit chodíš taky poučovat 🙂 Ne že ne Tebe já na PCT i uznávám jen to působí komicky když si neporadíš s Obermaierm na vlasním webu 🙂

            • Ne jen mi připadá divné když jeden redaktor chodí poučovat redaktory na konkurenční weby. Třeba bych čekal něco jako slušnou kolegialitu mezi redaktory. Napsat kolegovi z konkurenčního webu email… hele mi se to nezdá a nesouhlasím. Než to vlastně vpálit na web. Si tak říkám kolik cizích redaktorů chodí poučovat na PCT… Já za pravdu, kterou sám Adam přiznal dostal na PCT BAN. 🙂 Z tohodle hlediska mi to přijde směšné. O to víc, že Adam kdysi pracoval tady…

              Teď neřeším kdo má pravdu zda Adam a nebo Jan.

            • Copa o to, Stach, Soucek a Belka chodej na cizi weby pod alter egama. Na nekterejch webech dokonce tvorej jejich aliasy nemaly procento diskuteru, zejo kluci 🙂 AV ma narozdil od jinejch autoru aspon koule chodit na trh s vlastnim jmenem.

            • Hoši, vy si furt neuvědomujete, že s obrem jsem toho udělal víc než kdokoliv jiný v téhle republice. 😀

              Podívejte se, jak vypadal PCT předtím, než jsem tam šel, a jak vypadá teď.

              Ano, konečné řešení nemám, protože když něco podělá, tak se stejně dozvím jenom “no jo, ale lidi to čtou”.

              A tohle už není ani tak můj problém, jako problém těch, kteří čtenost tomu, co napíše.

              Když udělá nějakou trollovací novinku, nabouchá desetkrát víc prokliků než všechno široko daleko kolem.

            • “A tohle už není ani tak můj problém, jako problém těch, kteří čtenost tomu, co napíše.”
              aha takže máme být ticho a on bude moct lhát a podvádět? A Ty tam pod jeho článek napíšeš sám ža podvýděl? Ano měl jsi ty koule mi přiznat že podváděl. I pro to Tě beru, ale sám jsi napsla že s ním nic nemůžeš udělat, že tam má větší moc než Ty… A protože tam je déle jak Ty tak může… Protože bulvár funguje on tam zalže nebo zapodvádí v testech a lidi se to snaží uvést že lhal a podváděl. A to zvedá čtenost a o to jde že? Nejde o solidní práci, ale o to mít i špinavými praktikami co nejvyšší návštěvnost. No co k tomu dodat…
              Jen mi to přijde úsměvné… půjdeš poučit i kluky na SHW.cz pokud napíší něco s čím nesouhlasíš?

            • Jsou tu weby, ktery nemaji vubec zadnou sebereflexi a ty si stezujes na pct? 😀 Venujes stejny mnozstvi na stiznosti na objektivitu diitu a blogysku? Ne.

            • Kluci ze SHW píší celkem normálně. A už tam prakticky nelezu, většinou mě tam spíš vyhodí Google.
              Problém by nebyl, kdyby tam někdo napsal, že kecá, problém je v tom, že máte potřebu napsat to tam pod každý článek padesátkrát a ještě o tom živě diskutovat.

            • Aha 🙂 takže není chyba mu to dovolit ale je chyba čtenářů, že PCT vůbec navštěvují a nad jeho chováním diskutují 🙂 Tomu se říká pokrytectví 🙂 Tohle mi připomnělo, jak do mě jeden magor naboural, ale policistům uváděl, že jsem vinný já. PROTOŽE JSEM TAM STÁL kdybych tam nestál tak do mě nenaboural 😀

            • jo ještě mě zaujalo “Kluci ze SHW píší celkem normálně.” A kdo píše normálně určuješ Ty? Stal ses šéfredaktorem všech českých webů? 🙂

            • No ale nerika tvuj guru, ze je chyba zakazniku, ze se Nvidii tak dari? Myslim, ze to opakuje v kazdym clanku aspon tak 5x, ze kdyby hloupi zakaznici osklivou zlou Nvidii a osklivej zlej Intel nekupovali, bylo by najednou vsechno v poradku a AMD by po zasluze vladla svetu? 😉

            • Ech, ok. Kluci ze SHW z mého omezeného úhlu pohledu píší podle mě celkem normálně, proto nemám potřebu jejich vyjádření nějak rozporovat. Spokojenost?

              Dokud má obr čtenosti, jako má, nikdo nebude mít zájem řešit, jestli píše něco, co by psát neměl. To není pokrytectví, to je konstatování faktu. Kolik lidí kvůli němu přestalo na PCT chodit a nakolik to srazilo čtenost ostatních autorů, se na statistikách nepozná. Pozná se jen to, že se jeho články čtou.

              Ale jinak mě už celkem unavuje, že se cokoliv, co napíšu, stočí na ultimátní argument “ty si neumíš udělat pořádek s obrem, tak drž hubu a krok”. 😀 Zrovna v téhle diskuzi bych to nečekal.

            • Zrovna na Diitu potřebuje No-X oponenturu jak sůl, protože dle mého názoru už tam delší dobu píše, jak to říci, zajímavým stylem. Zrovna dnes poněkud mlžil kolem Der8auera a jeho videa o boostu Ryzenů 3000 řady.

            • @Adam Vágner, Obr je odborník, celá flotila kritikov jeho práce neumí ani zlomok z jeho vedomostí a znalostí, fajn, že ho máte.

            • Má jednu hodně špatnou vlastnost – že své domněnky prezentuje jako fakt a je těžké rozlišit, co jsou fakta a co jeho domněnky.

            • Ja bych rekl, ze k Obrmajerovy a jeho zakladni vlastnosti patri i cistokrevne zamerne lhani. Podobne jako treba nekteri jedinci jako Maudit, Hnizdo a jini

          • @Adam
            Na to F1 jsem se před psaním tohohle článku nedíval, chyba.
            Ovšem to původní DLSS by spatialní mělo být, přesně tak to Nvidia popisovala v tom whitepaperu.

            Stáhl jsem si to video z F1, abych se mohl dívat snímek po snímku, a vypadá, že tam je to opravdu taky už temporální, protože je to mázlý opravdu zjevně – ale je zajímavý, že proti tomu není současně mázlej ten TAA. (Takže jo, uznávám, že to Control patrně není první s temporálním filtrováním.)

            Protože na začátku v tom Final Fantasy XV Demu (IIRC) tohle bylo přesně naopak, tam se dalo ukazovat na místa, která TAA rozmazalo tím temporálním zprůměrováním se sousedníma snímkama, ale DLSS je mělo čisté díky tomu, že temporální nebylo. (Tohle asi hrozně záleží na tom, jestli se správně kompenzuj pohyb pohybovýma vektorama – u toho FFXV asi vektory špatně používalo TAA, tady u toho F1 je zřejmě TAA používá efektivně, ale DLSS… vůbec? Není to nějakej bug, kterej už spravili? Třeba že dělají separátně temporální denoising nad tím výstupem s DLSS úplně bez kompenzace pohybu? Holt by to chtělo vědět víc o tom, jak to funguje…)

            Jinak ne až takhle šíleně, ale třeba jako v Battlefieldu může klidně rozmazávat i čistě spatiální filtr, když ho tak někdo natrénuje ,případně to prostě může být efekt té interpolace. Nějaká míra mazání textur je asi obecnej problém danej tím, jak ta interpolace pracuje. Když se různé komplexní vzory/”textury” (ve smyslu určité detailní plochy, i kdy by to byl jen náhodně vypadající šum nebo tak něco, prostě takový ty detaily v rámci nějaké plochy), na kterých se ta síť učí, downscalujou, tak ten downscaled výstup vypadá často hodně podobně pro různé takové “textury”. Takže když pak při inferenci síť postupuje opačně od toho downscalovaného obrazu k tomu vyššímu/původnímu rozlišení, tak vlastně moc nemůže poznat, který z tamtěch původních vzorů, které po downscalingu vypadají stejně, má vybrat. A z tohohle důvodu to může právě nakonec produkovat takový mázlý vzhled, který rozhodování pomocí PSNR vyhodnotilo jako “podobný originálu”. Takhle mi to vysvětloval jeden člověk, co se různýma algoritmama na zpracování obrazu zabývá a docela mi to vysvětlení sedí.

            Při tom upscalingu je jeden problém interpolace hran a vedle toho je zase problém těch ploch. Jsou zase postupy tzv. texture synthesis, které se zaměřují na tohle, ale asi to taky není moc snadný udělat tak, aby to fungoval fakt realisticky a bez problémů (a rychle).
            Ono u DLSS je pak samozřejmě i problém s tím, že když se do toho v jednu chvíli vrazí už příliš mnoho výkonu/komplexity (mimo to, co běží na tensor jádrech, i když ty taky mají určitou spotřebu energie), tak bylo lepší to nedělat a rovnou zvýšit rozlišení. Takže nemá smysl používat něco ultra komplexního, když je cílem ušetřit výkon.

            “Tak radši nedomýšlej, to je cesta do pekla.”
            Kdybych nemohl, tak bych nemohl prakticky napsat nic ani k té temporální stabilizaci, protože to Nvidia holt moc nevysvětluje.

            • U F1 bylo DLSS rozbity. Proto byl videt ten temporalni charakter – kvuli chybe. U FF neznamena absence rozmazani absenci temporalniho prvnku. Znamena absenci ty chyby, ktera byla v F1. DLSS bylo a je temporalni od zacatku. Uz v prni prezentaci Huanga to bylo, v blog postech to bylo. Vsechno si oznacil za marketingovy reci.

              V tom whitepaperu to taky je, hned na zacatku:

              “DEEP LEARNING SUPER-SAMPLING (DLSS)
              In modern games, rendered frames are not displayed directly, rather they go through a post processing image enhancement step that combines input from multiple rendered frames, trying to remove visual artifacts such as aliasing while preserving detail. For example, Temporal Anti-Aliasing (TAA), a shader-based algorithm that combines two frames using motion vectors to determine where to sample the previous frame, is one of the most common image enhancement algorithms in use today. However, this image enhancement process is fundamentally very difficult to get right.

              NVIDIA’s researchers recognized that this type of problem – an image analysis and optimization problem with no clean algorithmic solution – would be a perfect application for AI.”
              https://www.nvidia.com/content/dam/en-zz/Solutions/design-visualization/technologies/turing-architecture/NVIDIA-Turing-Architecture-Whitepaper.pdf
              (strana 34)

              Jasne tam definujou problem – moderni algoritmy pouzivaji temporalni pristup. A ted pozor – jako problem definujou schopnost spravne kombinovat data z vic snimku. A v zapeti mluvi o tom, ze na jeho reseni je idealni pouzit AI. Nikde se tam nepise ani slovo o tom, ze DLSS je spatial technika.

            • “Ono u DLSS je pak samozřejmě i problém s tím, že když se do toho v jednu chvíli vrazí už příliš mnoho výkonu/komplexity, tak bylo lepší to nedělat a rovnou zvýšit rozlišení.”

              Ono v 90% případů je lepší DLSS vypnout a renderovat rovnou ve vyšším rozlišení. Proto taky nVidia “zfixlovala” to Control video. DLSS bere tolik výkonu, že se levá strana videa neměla renderovat v 720p, ale např. v 900p (zkrátka tak, aby obě verze měly stejný framrate) – ale to by DLSS nevypadalo tak dobře…

            • Já o tom nevím o moc víc než ty. Je to pro mě stejný blackbox. A obecně o neuronových sítích vím v podstatě jen to, že existují.
              Ale už od uvedení žiju v tom, že to DLSS využívá i okolní snímky, nedohledám, kde jsem na to byl, nedohledám, kdy jsem na to byl, protože už jsem k tomu nějaká videa a texty nakoukal, mám to tak zafixováno, ale nejsem schopný to odcitovat. Možná to byl právě ten whitepaper výše. 🙂
              U DLSS v F1 2019 o tom vím proto, že jsem to chtěl testovat a narazil jsem (a pak to řešil s Nvidií). Patch zatím není, nějaké interní buildy, kde to bylo opravené, měla Nvidia už před pár týdny, ale asi to teď testují trojnásob, než to znovu vypustí ven. A nejspíš se to snaží i dotlačit do maximální kvality.

            • @Maudit
              Tvůj citát mluví o TAA, temporal antialiasing, ne o DLSS.
              A z toho whitepaperu vychází můj článek o DLSS, proti kterými jsi vždycky tak horlivě flamoval. Je to na stránce 34 a už mě fakt štve, že jsem ji četl snad 30x, abych se přesvědčil, že tam to, co tvrdíš není. Tahle šaskárna mě stála možná už i desítky? (desítku bych řekl že určitě, lol…) hodin, který jsem moh věnovat něčemu smysluplnějšími. I teď jsem si to přečet a zase si myslím, že prost úproně tvrdíš něco, so není pravda, a já se můžu jenom dohadovat, jestli ti něco nedochází, nebo jestli je to jedno, nebo kde je problém. Já o sobě pochybuju a zamýšlím se, jestli jsem se třeba dřív nespletl. Docela by mě zajímalo, jestli si to někdy zkusil ty.

              Jako v případě DLSS se většina tvejch domněnek nakonec ukázala jako blbost. Tvrdil si leccos, od toho, že to bude zlepšovat kvalitu nad úroveň nativního vykreslování, hádal ses o to, že je to supersampling a ne rendering naopak na nižším rozlišení a pak upscale (což už je teď doufám nesporný)… Taky si spoustu těch věcí tvrdil dřív, než o nich byly k dispozici nějaký informace, což znamená, že buď máš ty nejlepší zákulisní informace, nebo si někdy cucáš věci z prstu.

            • Muj citat jasne mluvi o TAA, tzn. temporal aliasingu. Ale v zapeti mluvi o tom, ze stejnej problem se oni snazi resit pomoci AI, tzn. DLSS. A ja ti nevim, ty mi tu porad tvrdis, jak to v tom nevidis, i kdyz jek je videt nejen podle me je to ocividny.

              Zatimco kdyz ja se zeptam, kde je v tom whitepaperu cokoliv, byt jedina zminka, o tom, ze DLSS je spatial technika, nebo o tom ze DLSS je upscaling, nikdy nedostanu odpoved. Zadna zminka o upscalingu nebo spatial filtru tam u DLSS neni. Ani jednou tam ty slova nejsou. Doporucuju zkusit full text search.

              A tak se ptam, kdyz co tvrdim ja, ma byt jen “mozna” (z tvyho pohledu) zaklad v tom whitepaperu a mluvi o tom i ty blogposty a Huang v keynote (coz opet podle tebe je marketing), zatimco o tve alternative nikde v materialech Nvidie neni ani slovo – na zaklade ceho je tvoje vysvetleni spavne a moje spatny, “což už je teď doufám nesporný” podle tebe?

            • A btw, me uz to taky nebavi cist jak to porad okecavas. Uz sem davno chtel bejt pryc, at si to tu uzijes klidne. Diskuze pod timhle clankem uz je z my strany ciste jen proto, abych mel nejakou closure u tematu, ktery tu resime dlouho. Pak uz si pis co chces a me tu neuvidis.

            • Hele, a nebylo by jednodušší dát dohromady pár otázek a poptat se Igora Staňka, co o tom ví a jestli by na ně nemohl někdo odpovědět? Nějaké info by k tomu určitě doplnil, i když něco by asi šlo do vytracena (stylem poptám se a uvidím, ale už na to nikdo neodpoví).

            • Asi jo, ale zase se trochu bojím, že bych taky dostal takový ty vágní opisy jako mají v těch tiskovkách, a nebyl bych o moc blíž.

            • @Maudit
              “Zatimco kdyz ja se zeptam, kde je v tom whitepaperu cokoliv, byt jedina zminka, o tom, ze DLSS je spatial technika, nebo o tom ze DLSS je upscaling, nikdy nedostanu odpoved.”

              Jenže to tam nemusí být zmíněné, protože spatiální upscaler je to, co by to mělo být ve výchozí sitauci, to je základ – protože co jinýho by to jako mělo být? Naopak temporální fungování je pak něco extra nad tenhle základ, a tudíž by to potřebovalo nějakej doklad*. Kterej tam ale není. Ale v tomhle případě ti to najednou nevadí, a jako důkaz ti tam stačí, že se řekne, že TAA je temporální. Z toho podle tebe vyplývá, že DLSS je temporální taky, protože… tvoje přání. No fakt sranda.

              * Když přijdeš k řece a jeden člověk ti bude tvrdit, že tam teče voda a druhej, že je to blbost, že tam teče líh… na kterým bude břemeno důkazu? Možná to tad není tak vyhraněný, ale IMHO tady je břemeno důkazu na tom, kdo tvrdí, že je to temporální processing. To v tom whitepaperu není a kdyby ten filtr tehdy temporální byl, tak by se tím pochlubili. Oni ho tam ale naopak dávají s temporálním TAA do protikladu a ukazujou, že to nemá typické artefakty pro temporální fungování (tehdy, nemluvíme teď o tom F1 , kde to už temporální podle všeho je).

              “byt jedina zminka, o tom, ze DLSS je spatial technika, nebo o tom ze DLSS je upscaling, nikdy nedostanu odpoved.”

              Tohle je prokazatelně nepravda, že to je upscaling je zrovna věc, která je tam řečená jasně: “DLSS allows faster rendering *at a lower input sample count*, and then infers a result that at target resolution ”
              Kromě toho to dokázalo v podstatě všechno – to, jak to vizuálně funguje ve hrách a ani Nvidia to nijak nezastírá, jak už se tu diskutovalo, takž tady se fakt jenom kroutíš, že ti hanba není.

              “Uz sem davno chtel bejt pryc, at si to tu uzijes klidne. Diskuze pod timhle clankem uz je z my strany ciste jen proto, abych mel nejakou closure u tematu, ktery tu resime dlouho. Pak uz si pis co chces a me tu neuvidis.”

              Jo, to by bylo pro můj klid super, kéžby a doufám, že v tomhle záměru budeš mít co nejvíc úspěchů 🙂
              Ale mám teda takovou neblahou předtuchu, aby se to nepokazilo 🙁 Ne že bych tě chtěl hecovat, ale asi “too good to be true…” jak říkají angličáci.

            • part 1) ohledne dukazniho bremene

              “Naopak temporální fungování je pak něco extra nad tenhle základ, a tudíž by to potřebovalo nějakej doklad*.”

              Jenze dukazni bremeno je na tom, kdo neco tvrdi. Ja cituju prezentace Huanga. Moc dobre vis, ze on v keynote o temporaly stable network mluvi. Moc dobre vis, ze mluvi o DLSS jako o autoencoderu. Ja odkazuju na neco konkretniho. Ty tvrdis, ze to je marketing. Budiz. Ale dukazni bremeno je tim padem na tobe. Kde mas nejaky dukaz, ze je to jen marketingova omacka, ktera nema s realitou nic spolecnyho?

              Ty taky tvrdis, ze DLSS neni temporalni, ze je to jen jakejsi spatial filter a upscaler. Opet to je tvoje tvrzeni, proti kterymu stoji fakta – treba ta F1, nebo technika, o ktery mluvi Nvidia v blogu. Pokud tvrdis, ze to je jen spatial filter a ne temporalni sit, a ze to neni autoencoder, ale jen bezny upscaler, na zaklade ceho? Dukazni bremeno je opet na tobe – mel bys dokazat, ze zdroje z Nvidie jsou opravdu jen marketing a dokazat, ze to je jen spatial filter a jen upscaler. Co ja vim, treba Nvidia nevi, co rika. Treba zazracne netusi, jak jejich vlastni technologie funguje a ty jo. Ale na zaklade ceho to tvrdis? A nech si nejaky pohadky o rece. Tady je zcela jasny, kdo musi co dokazovat.

              Nestaci to jen tvrdit. A neni mozny selektivne si vybirat, kdo ma co dokazovat.

              part 2) ohledne samplu
              “DLSS allows faster rendering *at a lower input sample count*, and then infers a result that at target resolution ”

              Co je to inference u neuralni site prece vis. Tak proc predstiras, ze to v ty vete jako neni? Inference pouzije jednak externi vstupy (to jsou ty lower input sample count) a pak vyuzije informaci, obsazenych v te samotne siti (neboli co se naucila). To je ta super-sampling cast. Porad mi neni jasny, co na tom nechapes. Matematickej upscaling pracuje jen se vstupnima datama. DLSS pracuje jak se vstupem, tak se znalostma ty site o danym prostredi (proto se taky trenuje pro kazdou hru specificky).

              Neboli kdyz pred tebe dam roztrhany kusy americky vlajky (nebo treba cesky, to je fuk), dokazes zbytek dokreslit. Vstupy pro celou vlajku nemas. Ale videl si ji tisickrat v ruznejch verzich – pouzijes svoje nauceny znalosti.

              “Kromě toho to dokázalo v podstatě všechno – to, jak to vizuálně funguje ve hrách a ani Nvidia to nijak nezastírá, jak už se tu diskutovalo, takž tady se fakt jenom kroutíš, že ti hanba není.”
              Jako co bylo dokazany ve hrach? Ze kdyz to nasadi predcasne a ta sit neni poradne natrenovana, ze to vypada hnusne? Naopak treba zrovna u Metra byl krasnej priklad toho, jak kdyz se sit delsi dobu trenuje, dosahne mnohem lepsich vysledku – viz ta prvni verze DLSS v Metru, ktera byla dost rozmazana a pak ta novejsi, ktera uz funguje dost slusne, lip nez TAA treba. Nejak tomu nerozumim, co tim chces rict.

              Ja sem pro, abychom sepsali nejaky otazky a kdyz to Adam Vagner dokaze dostat pres Stanka, sem s tim. Vubec se toho nebojim. Aspon to budeme vedet jiste. Vymlouvat se na to, ze to zas bude nejaka marketingova omacka vyzniva dost jako ze si pripravujes unikovou cestu. Tak bud si si jistej tim co tvrdis, protoze to trvrdis dost vehementne (vsak v kolika clancich jsi mluvil o DLSS zcela schvalne pejorativne jako o upscaleru a spatial filtru), nebo si jistej nejsi, pak ale nechapu ten zeal, se kterym ty clanky a posty pises.

            • Já beru jako hlavní pramen ne casual marekting, ale whitepaper, v kterým to je popsaný. Ten s tebou nesouhlasí, ať to překrucuješ jak chceš a okecáváš jak dlouhým příspěvkem chceš.

              F1 je novější než ten whitepaper, a už jsem výš napsal/uznal, že tam to temporální je. Ale to neplatí pro ty hry a implementace, o kterých píše ten whitepaper a kterých jsme se bavili mnohokrát předtím.

              “Co je to inference u neuralni site prece vis. Tak proc predstiras, ze to v ty vete jako neni? ”

              Protože fakt není.

              “Inference pouzije jednak externi vstupy (to jsou ty lower input sample count) a pak vyuzije informaci, obsazenych v te samotne siti (neboli co se naucila).”

              Ano, popsal si upscaling pomocí neuronální sítě. To, že se používá neuronální síť, na věci nic nemění. V té neuronální síti nejsou bezeztrátově uložené snímky v nižším rozlišení, jen natrénovaný interpoátor, který provádí UPSCALING určitým způsobem. Koho tu chceš oblbovat?

              Plácáš úplný irelevantní nesmysly, já o koze on o voze atd. Myslím, že ti to zase začnu mazat, protože to je irelevantní spam, kterej se tváří jako vyvracení mýho příspěvku, a já kvůli tomu musím reagovat, ale přitom je to úplně prázdná blbost, která nedává smysl. A debata půjde zase kolem dokola, furt budeš postovat čím dál větší blbiny skákat sem a tam, a nikdy neuznáš, že se můžeš (a tady to IMHO fakt nastalo) mýlit. A kvůli tomuhle jsem vzhůru skoro ve tři ráno, ježkovy zraky.

            • “Protože fakt není.”
              “DLSS allows faster rendering at a lower input sample count, and then *INFERS* a result that at target resolution ”

              “V té neuronální síti nejsou bezeztrátově uložené snímky v nižším rozlišení”
              To mi vkladas do pusy, ale nic takovyho jsem nikdy netvrdil. Jak funguje autoencoder, ze se uci features, jsem tu psal uz mockrat.

              Vzhledem k tomu, ze vyhrozujes mazanim, tak se podme domluvit, jak Adam Vagner navrhnul, a zkusime poslat otazky Igoru Stankovi. At to dopadne tak nebo onak, bude to dobrej material pro clanek, ne snad? Ty se me zbavis, budeme vedet jak to je – pohoda 🙂 Ja se pokusim Adama kontaktovat kazdopadne, at uz se chces pridat nebo ne, protoze mi to prijde jako dobrej napad. Je to na tobe.

            • To se bát nemusíš, když už nic, tak o tom ví poněkud víc, než co se dočteš kdekoliv z whitepaperů nebo veřejných prezentací.
              Už nedělá PR, řeší spíš právě tuhle problematiku (hry, kvalita ve hrách, výkon karet ve hrách, bugy ve hrách).

      • Jinak tahle vlastnost, kdy “Super Resolution” upscalovací algoritmy mají být schopné získat nějaké spatiální detaily navíc díky temporální analýze (tedy že se při upscalování snímku N dívají třeba i na N-1 a N+1) není nová věc, to se normálně zkoumá/provádí už několik let. Jen dřív se to vztahovalo k upscalování videa – třeba z Full HD na 4K v televizích, ne her.

        Pracuje se při tom třeba se sub-pixel pohybem ve videu, tím jak snímek od snímku je objekt zabraný trošku jinak a můžou na něm být vidět trošku jiné detaily, takže když to obojí zkombinuju, tak můžu dodat ty detaily ze sousedních snímků do snímků, kde zrovna kvůli rozlišení nebo kompresi vidět nejsou. A podobný efekt může být i když to “video” jsou vykreslené snímky ze hry.

        V tom mojem článku je to zmíněné tady:
        “Toto zprůměrování se při filtrování videa často používá k potlačení šumu, ale zde by paradoxně mohlo obnovovat detaily, které spatiální DLSS rozmazávalo. A to díky tomu, že temporální algoritmus je může najít v po sobě následujících snímcích, a tím je zachovat coby detail, zatímco spatiální algoritmus je může považovat za šum a odstranit je.”

        Nvidia ovšem úplně neříká, že tahle vlastnost se projevuje v Control, jak už bylo řečeno. Zmiňují ji v kontextu toho AI research modelu, ale ponechávají stranou, jak moc se jí podařilo zachovat v té zjednodučšené verzi. Ale IMHO by by mohla, jen to bude dost záviset na tom, jak je přesně to temporální filtrování/analýza nastavené. Jestli používají další snímky přímo jako vstup pro tu neuronovou síť, tak tam bude minimálně potenciál, aby se to tak mohlo chovat. Ale zase jako pořád je to interpolace odhadující chybějící pixely, takže je třeba pamatovat na to, že to nebude úplná magie, stejně jako to nikdy nebyla magie v těch televizích. Nativní obraz by pořá měl být nepřekonatelný (i když paradoxně může mít ten efekt shimmeringu z vykreslování, protože neprošel tou temporální stabilizací jako ten filtrovaný upscale… podobný paradox/kompromis jako to, že nativní obraz bez DLSS má víc detailů, ale může mít aliasing protože DLSS kromě upscalování má taky efekt anti-aliasingu).

    • Ne, ten experimetnální model nemůžou nasadit do DLSS, protože by potřeboval mnohem víc výkonu. Proto právě vznikla ta zjednodušená verze, o které tam mluví jako “image processsing algorithm”.

      Ono nedává smysl se u pokusné věci, na které se snažíte zjistit, jak dobré by to až mohlo být, omezovat výkonem, který je dusupný realtime na aktuálních GPU. Tam se budous nažit překonat state-of-the-art v oboru, najít nové triky, jak tu kvalitu vylepšit, a počítat se to bude na serverech při klidně mnohem nižších rychlostech, protože záleží na výsledku, ne na to, jestli to teď TU102 někde utáhne ve hře.
      Ale metody z toho se pak můžou adaptovat – přidají se do nich zkratky, omezí se počet neuronů, trochu se slví z té kvality, a může z toho pak být něco realtime. Ale určitě to nebude ten samý model.

      Tady je ta relevantní část:
      “Leveraging this AI research, we developed a new image processing algorithm that approximated our AI research model and fit within our performance budget. This image processing approach to DLSS is integrated into Control, and it delivers up to 75% faster frame rates.”

      • A pak na konci o tom mluvi, ze ten research model chteji optimalizovat a nasadit:

        “Our next step is optimizing our AI research model to run at higher FPS. Turing’s 110 Tensor teraflops are ready and waiting for this next round of innovation. When it arrives, we’ll deploy the latest enhancements to gamers via our Game Ready Drivers.”

        Predposledni odstavec celyho clanku. Jasne mluvi o AI research modelu. Ten “Image Processing Algorithm” je v Control uz ted.
        https://www.nvidia.com/en-us/geforce/news/dlss-control-and-beyond/

          • Však oni píšou o optimalizacích. A pod optimalizacemi si (aspoň teda já) představuju změny. Ale pořád to bude ten AI research model na rozdíl od toho “algoritmu” [1], co teď mají v Control. Já to teda chápu tak, že v Control to snad ani není AI – jen něco, co napodobuje/blíží se tomu jejich AI modelu.

            [1] “Leveraging this AI research, we developed a new image processing algorithm that approximated our AI research model and fit within our performance budget.”

            • No, jenže když je ten potřebnej výkon v jednu chvíli příliš vysokej, tak už pak nestačí jenom optimalizace ve smyslu “napišme to chytřeji”, které nemění výsledek. Při zrychlování takových náročných filtrů (nebo třeba enkodérů videa) prakticky vždycky jde o to, přiblížit se co nejvíc tomu výsledku, zatímco se co nejvíc zlepší výkon, ne zachovat 1:1 ten původní výsledek a zlepšti výkon tak jak to jde pod touto podmínkou. Protože na tom špičkovém/ideálním výsledku se většinou podílejí i věci, které mají příliš velkou náročnost. Pokud ten research model byl dělaný na to, aby byl co nejlepší, tak tam nejspíš bude rozdíl mnoha řádů ve výkonu (= náročnosti) proti něčemu, co běží realtime.
              Kdyby ne, tak to znamená, že ten research model má rezervy a mohlo se v něm zajít dál…

              Jako tohle neříkám jako jistotu, je to jenom můj odhad na základě toho, jak to tak nějak vypadá a nějakých zkušeností. Mylsím, že je prostě pravděpodobnější, že to bude ta aproximace, nebo možná lépe řečeno port, kde nějaké vlastnosti bude převedené, někde se sníží komplexita (počet neuronů), některé prvky se třeba budou muset vynechat. A můžu se v tomhle plést, ale jako je to realističtější, než že by to na Turingu běhalo bez zásadnějších funkčních změn.

            • Tady nemluvime o filtru, ale o neuralni siti. Ty jsi snad expert i na optimalizovani neuralni site? To klobouk dolu. Ona se snad experimentalni neuralni sit optimalizuje stejne jako ciste matematicky postupy? Nevime skoro nic o strukture ty site.

  2. To video je dost nefér – ukazuje pouze jednu stránku věci. Nebere vůbec v potaz to, že DLSS bere nějaký výkon – správné by bylo, dát proti sobě např. 900p (přesné rozlišení se doladí podle toho, aby výkon byl stejný jako u DLSS) standardní upscaling na 1080p a proti tomu 720p DLSS upscaling na 1080p – v tu chvíli mají obě metody stejný dopad na výkon a je možné porovnávat kvalitu.

    Zkrátka aby se mohlo objektivně porovnávat, musí být buď stejná kvalita obrazu a porovnáváme výkon, nebo musí být shodný výkon a porovnáváme kvalitu obrazu.

    • DLSS nebere zadny vykon. Vyuziva Tensor Cores. Je to ale krok, ktery se aplikuje po renderingu aktualniho snimku a to stoji cas v render pipeline. Pokud je cas aplikace neuronove site kratsi, nez by byla doba renderovani v plnem rozliseni, zveda se pocet snimku za vterinu. Proto taky neni DLSS podporovane pro mala rozliseni a vyssi FPS – zadne zlepseni by neprineslo.

      Kdyz to uvedu v prikladu – rekneme, ze snimek v plnem rozliseni trva vyrenderovat 50ms (20 fps). Snimek v nizsim rozsliseni se renderuje 20ms (50fps) a aplikace neuralni site trva 10ms (20 + 10 = 30ms, ~33fps). Tim se vylepsi framerate z 20 fps na 33 fps pri stejnem vystupnim rozliseni.

      Kdyz by ale byl cil ten snimek v nizsim rozliseni – 20ms/50fps a renderoval se jeste z nisiho treba za 12ms (83 fps), byl by vysledek nezadouci – 12 + 20 = 32ms / ~31fps – coz je horsi nez renderovat v nativnim rozliseni. Tady by se framerate dokonce zhorsil z 50 fps na 31 fps.

      • Špatně. Nepochopil jste o čem píšu.
        DLSS ve videu upscaluje ze 720p na FullHD. V tom se shodneme. Použijme tedy Váš příklad, kdy 720p + DLSS trvá 30ms, 720p 20ms a FullHD 50ms.

        Háček je v tom, že já jsem nic nepsal o renderování v plném rozlišení (FullHD, což je těch 50ms). Já jsem naopak psal, že aby bylo možné udělat relevantní porovnání, měli najít rozlišení, při kterém rendering snímku trvá stejně, jako při 720p DLSS – dejme tomu, že je to 900p.

        Takže si to schrňme. Máme:
        720p – 20ms (50FPS)
        720P DLSS – 30ms (33FPS)
        900p – 30ms (33FPS)
        1080p – 50ms (20FPS)

        V momentě kdy se na ty hodnoty podíváte, je jasné, že správné je udělat porovnání mezi 720p DLSS a 900p, protože tyto nastavení mají naprosto stejný výkon (30ms). Jenže nVidia zvolila porovnání 720p a 720p DLSS, kdy více vynikne schopnost DLSS (protože je porovnání nefér). Ještě bych uznal, kdyby v tom videu byly ukázány FPS – bylo by jasně vidět, že DLSS má sice vyšší kvalitu oproti 720p, ale taky stojí výkon (viz těch 50FPS versus 33FPS z Vašeho porovnání – jsou to vyloženě Vaše čísla, pouze jsem je zkopíroval, takže si nestěžujte, že jsou špatná nebo závádějící).

        • Ja jsem ale nereagoval na vas zamer, ten je zajimavy. Jen na to domenku, ze DLSS bere vykon. Nebere, protoze vyuziva Tensor Cores. Jde ciste jen o tu delky vypoctu. GPU muze v te dobe s klasickymi shader units delat neco jineho. Pokud se napriklad do offscreen bufferu renderuje nejaky odraz a na nej se pak aplikuje DLSS, muzou se klasicke shader units pouzit na renderovani treba shadow mapy.

          • DLSS využívá z drtivé většiny Tensor cores, ale vsadím se, že minimálně pár instrukcí musí zpracovat normálně shadery. Nikdy nVidia netvrdila, že DLSS využívá jen a pouze Tensor cores.

            DLSS sice je aplikováno paralelně se zbytkem výpočtů, ale i tak ve výsledku způsobuje pokles ve výkonu – sám jste to napsal, když jste psal, že 720p se renderuje 20ms a 720p DLSS 30ms – ten propad ve výkonu 10ms zde jde jasně vidět.

            • Jaky pokles ve vykonu? DLSS neni vubec ani dostupne tam, kde by k poklesu mohlo dojit.

              Ze se renderuje 720p 20ms a s DLSS to same 30ms je sice pravda (tech 10ms jsem ale vzal nahodne pro priklad, to neni realna hodnota), ale jde o srovnani s cilovym rozlisenim, ne zakladnich. Ve skutecnosti je to 720p supersamplovane treba na 2k. A v nativnim 2k by se ten snimek treba renderoval 50ms. Takze DLSS je zrychleni. Dokonce sam priznavate tu extra hodnotu (kvalitu), kdyz chcete srovnavat ve svem scenari ne 720p DLSS s 720p, ale s 900p.

            • Myslím, že si nerozumíme, jaký propad výkonu myslím.
              Vy máte na mysli nárůst výkonu, kdy 4K dá 60FPS a 4K DLSS dá 80FPS (zde je 4K u DLSS myšleno jako cílové rozlišení, vstupní může být něco jako 1600p).

              Já mám na mysli “teoretický” pokles výkonu 720p DLSS (720p je vstupní rozlišení, FullHD je výstupní) proti čistě 720p (identická hodnota jako vstupní rozlišení DLSS).
              Tudíž mluvím čistě o tomto:
              720p (upscale na FullHD) – 20ms
              720p DLSS (cílové rozlišení FullHD) – 30ms
              Zde dochází k poklesu výkonu (a ano, souhlasím s vámi, DLSS v tomto případě přináší vyšší kvalitu, ale taky snižuje výkon).

              Díky tomu je to video co nVidia ukázala missleading – vůbec se nezmiňuje o tom, že levá strana (čistě 720p) má vyšší FPS než DLSS se vstupním rozlišením 720p a výstupním FullHD.
              To porovnání mělo být 900p (nebo jiné rozlišení, které podá stejné FPS jako DLSS varianta) proti 720p DLSS s cílovým rozlišením FullHD. Zkrátka aby obě varianty měly stejné FPS a lišila se pouze kvalita.

            • To ale neni ciste 720p. Je to 720p s in-engine scalingem na 1080p proti 720p s DLSS na 1080p. My nevime, co je in-engine scaling. Nevime ani jaky performance hit ma ten in-engine scaling. Muze mit kratsi dobu vypoctu nez DLSS, ale nemusi (zalezi, co dela interne). Navic bude pravdepodobne vyuzivat klasicke jednotky, tzn. muze byt kratsi na vypocet, ale po tu dobu bude jednotky blokovat.

              Ta demonstrace byla hlavne ale o potencionalni kvalite.

            • Na tom se shodneme, ale to co jsi napsal, je jen teorie – v praxi má ten in engine scaling zanedbatelný vliv na výkon a je vždy podstatně rychlejší než DLSS.

              Hardware Unboxed se tímto dost zajímali u Metra Exodus nebo BF V. Zjistili že 4K DLSS má vstupní rozlišení tuším 1600p nebo 1500p (tohle možná někde uváděla i nVidia/EA), a když manuálně nastavili rozlišení na 1800p-1900p (nevím teď přesně) a použili in engine scaling, tak měli naprosto stejný výkon jako u DLSS.

              Proto je to demo video prostě špatně. 720p dosahuje vyšších FPS než 720p DLSS s cílovým rozlišením 1080p. Správně by to porovnání mělo být 900p (nebo jiné rozlišení) proti 720p DLSS, tak aby obě metody dosáhly stejného výkonu.

            • No pokud chces referencovat HWUnboxed, tak pro me jakakoliv rozumna diskuze skoncila. Je mi uz celkem jasny, ze tady nejde o nic jinyho, nez zkusit propasovat do eteru myslenku, ze by DLSS nejak zhorsovalo vykon. Coz je samozrejme nesmysl.

            • @dom324

              udělal jsem krátké video… Bohužel rozlišení pro upscaling a dlss jsou trošku omezená, není tam rendering resolution v procentech jak v jiných hrách.

              Hraju v 2560×1080, pro upscaling můžu použít 810p nebo 540p, pro DLSS 720p a 540p

              Na videu je prve výkon v 810p upscaling, pak 720p DLSS a nakonec 540p upscaling.

              810p upscaling mi přijde o něco kvalitnější a FPS 54-61
              720p DLSS je nepatrně víc blurry, FPS mezi 64-72. 540p pak nabízí výborné FPS ale kvalita už je velice špatná, pixeluje to

              https://youtu.be/xERrZYV3SbE

            • Takhle to vypada dost dobre v obou pripadech. To “vic blurry” neni videt, ale to asi jde na vrub youtube kompresi, takze to beru, jak to rikas.