Nvidia překvapivě uvolnila PhysX jako open source. Chce ho uplatnit ve vědě a AI

34

PhysX, technologie pro hardwarovou akceleraci výpočtů herní fyziky, měla Nvidia dlouhá léta jako jednu ze svých exkluzivních výhod. Firma ji získala koupí stejnojmenné firmy (která pro ni původně vyráběla vlastní akcelerátory, jejichž podporu pak Nvidia ale celkem rychle utnula). Protože šlo podobně jako u G-Sync o určitou formu připoutávání si zákazníků k vlastní značce, vzbudil docela velké překvapení krok, který nyní s PhysX Nvidia podniká. Otevírá totiž tuto technologii jako open source, což by mohlo umožnit, aby začala fungovat i mimo GPU GeForce.

 

PhysX volně pod BSD licencí

Nvidia oznámila otevření PhysX na svém blogu. „Fyzikální simulace je ještě důležitější technologie, než jsme si dřív mysleli,“ podotýká se v tomto textu, a proto Nvidia PhysX uvolňuje pro širokou veřejnost. Kód by skutečně měl být otevřen v duchu open source, a to pod velmi permisivní licencí BSD (jde o tříbodovou verzi). Ta zjednodušeně řečeno umožňuje prakticky jakékoliv další využití v komerčním i nekomerčním produktu, a to jak v uzavřeném, tak v otevřeném.

Kód, představující SDK PhysX nyní ve verzi 3.4 se už nachází na GitHubu, kde by tedy zřejmě měl být hostován. Samozřejmě se teprve ukáže, zda bude Nvidia správně vést open source vývoj, aktualizovat repozitář o své vlastní změny, a zda bude dobře probíhat spolupráce s nezávislými a také přímo konkurenčními přispěvateli (a jak bude situace vypadat, když mezi zájmy těchto stran ve věci nějakého rozhodnutí nebude shoda). Uvolnění kódu ale otevírá možnost, aby se akcelerace efektů PhysX dostaly i na konkurenční grafické karty.

PhysX SDK na GitHubu

Akcelerace na konkurenčních grafikách?

Nebude to ovšem zas tak snadné, jak by se mohlo zdát. Kód SDK asi neobsahuje nic z ovladačů Nvidie, pokud by tyto součásti také byly pro implementaci v ovladačích pro jiná GPU potřebné. Zejména je zde ale asi problém s jazykem. Otevření kódu je jedna věc, ale kód pro výpočty běžící na GPU je zřejmě psaný v jazyce Cuda, který je stále exkluzivní věcí Nvidie. Ta tedy sice na jednu stranu technologii otevřela, ale navázanost na GPU GeForce se tímto vlastně nijak nemění. Akcelerované PhysX tak zůstane výsadou fanoušků značky Nvidia. S Radeonem nebo grafikou Intel tedy budete odkázáni stále jen na CPU výpočty.

Otevření kódu otevírá možnosti, jak toto změnit. Intel/AMD (potažmo další hráči třeba z ekosystému ARM) by mohli do SDK přidat vlastní nástroje, které by jazyk Cuda překládaly na standardní kód, jenž je přenositelný, tedy asi OpenCL (překlad Cuda kódu pro kompatibilitu s Radeony vyvíjelo AMD, takže by jej zde mohlo využít). Nebo se takovou mezivrstvu pokusit implementovat v ovladačích, každopádně ale asi nebude snadné zajistit, aby PhysX fungovalo se stejným výkonem jako při nativním běhu v Cuda na platformně Nvidie, pro níž bylo vyladěno.

Eventuální kompatibilitu Radeonů a grafik Intel s GPU akcelerací PhysX tedy není radno očekávat nějak rychle, pokud na ní vůbec dojde. Je také nicméně možné, že otevření PhysX může přispět k vývoji jiných projektů implementujících herní fyziku, jako jsou třeba knihovny Havok, nebo budoucí podobné projekty. Je možné, že programátoři z kódu nebudou pro hry čerpat celou platformu PhysX, ale třeba jen dílčí algoritmy, které mohou přepsat do OpenCL či Direct Compute. Otevřený kód tedy může být užitečný i pokud pomineme otázku svázanosti s Cuda. Kromě toho se v řadě, pokud ne rovnou většine her dnes používá PhysX běžící na CPU, kde problém s Cuda není. A otevření celého SDK by mělo umožnit fyziku počítanou na CPU ještě více vylepšit a optimalizovat, takže by se vázanost na GPU Nvidie mohla zmírnit touto cestou.

Nvidia

Pro hry, nebo spíš pro jiné oblasti?

Zajímavý detail tohoto oznámení ale je, že se v něm zdaleka nemluví jen o hrách. Herní fyzika je pro nás sice na PhysX to hlavní, ale Nvidia v tiskovce jako o přínosech této technologie hovoří například o jejím uplatnění ve fyzikálních simulacích pro seriózní účely (v sektoru HPC). A zejména pak v simulovaném trénování autonomních vozů, robotů a obecně AI. PhysX tedy zdá se má být i komponenta pro tvorbu virtuální reality nikoliv pro simulování herní akce, ale pro vytváření virtuální reality, v které by se trénovaly neuronové sítě autonomních vozů a podobně. Z pěti bodů, které na blogu Nvidia vypisuje, pokrývají tři toto určení, jeden zmíněné HPC výpočty a jen jeden vývoj počítačových her. A také ilustrační obrázky blogu se týkají robotické simulace.

Oznámení Nvidie se zaměřuje hlavně na využití v simulacích pro roboty a umělou inteligenci, dokládají to i ilustrace z blogpostu

Toto nemusí nutně nic znamenat. Je možné, že tyto sektory prostě jen chtěl maximálně vypíchnout marketing, jelikož jsou vděčné pro investory a analytiky. Nicméně je možné, že je zde signalizována změna zaměření PhysX. Možná, že Nvidia už tolik nebude tlačit na herní využití a raději se bude zabývat oněmi auty a roboty. Došlo-li k takové reorientaci, pak je možná právě i hlavním důvodem onoho neočekávaného otevření celé dlouhých deset let (od roku 2008) exkluzivní technologie. Nicméně to ještě nemusí znamenat, že použití PhysX ve hrách bude odstrčeno na vedlejší kolej nebo utlumeno, Nvidia ho stále může udržovat a rozvíjet parelelně ke svým AI ambicím. Pro hráče se tedy klidně nemusí nic změnit – uvidíme, jak se situace bude vyvíjet.

Nvidia překvapivě uvolnila PhysX jako open source. Chce ho uplatnit ve vědě a AI

Ohodnoťte tento článek!
4.6 (91.11%) 9 hlas/ů

34 KOMENTÁŘE

  1. trochu mi unika pointa, vo vedeckych vypoctoch sa pouzivaju trochu ine fyzikalne modely ako ponuka physx, ktore je dobre maximalne tak na pekne vyzerajuce animacie, ale so simulaciou nema nic spolocne.

    • Třeba si představují, že někdo své nenáročné simulace na PhysX postaví a díky podpoře GPGPU tak získají další odběratele svých HW produktů (Geforfe/Quadro/Volta). Ve hrách jde prakticky o mrtvou záležitost, tak proč to aspoň nevyužít marketingově.

    • muzes to rozvest, zajima me jake jine fyzikalni modely s epouzivaji ve vede? za svou karieru jsem delal pro automobilky kde pouzivali PhysX na virtualni crashtesty, delal jsem pro univerzitu vyvyjejici baterie a pro chemicke kalkulace taktez pouzivali PhysX a posledniz akazka z 2017 kde jsem delal vizualizace pro farmaceutickou firmu a opet pouzivali physX, Airbus pouziva PhysX pro simulace, ac tam jsem zakazku mel na necem jinem a s PhysX jsem tam do styku v zakazce neprisel, ale pouzivaji ho

      to ze ve hrach se pouziva Phys X nastaveny na nejakou hodnotu presnosti a nahodnych generaci neznamena, ze neumi i ty skutecne simulace vyuzivane ve vede a prumyslu 😉 ve farmacii, cemickem a automobilovem prumyslu se PhysX pouziva velice casto, prave proto ze umoznuje i vypocty s presnosti presne podle danych vzorcu 😉 mimochodem i CERN ma simulacni system pro presimulace postaveny prave na PhysX 😉 poplatky tam byli a jsou u PhysX priznivehjsi nez kdyby si takovy system meli samo postavit a udrzovat 😉

      to ze tady to lidi vidite jen ve hrach na nejake smesne urovni nastaveni aby to vubec rozhybal i ten nejlevnejsi domaci pocitac neznamena, ze se to neuvyuziva i na profi urovni

      • @Tynyt.. jestli je mrtvej nevim, kazdopadne vypada, ze ma vic pouziti, nez jen v hernim prumyslu.
        Nicmene to, ze se z nej stal open source muze indikovat, ze komercne nesplnil NV ocekavani a davaji od nej ruce pryc, protoze jej nechteji dal udrzovat/rozvijet, coz stoji prachy.

        • Takhle: co se herního využití týká, nesplnil cíle, nejde o standard, ani de-facto standard, ale pouhou variantu z několika možných (byť historicky nejhlasitěji propagovanou). Z pohledu využití jinde, to je jiná písnička, nicméně už Ageia tohle řešení vydávala primárně za určené pro hráče. Takových technologií, které neuspějí, ale zároveň si najdou na trhu nějakou niku, ve keré v nějakém stavu blízkém hibernaci přežívají, můžu vyjmenovat desítky. Ten zásadní problém je penetrace, a to jak z pohledu vývojářů, tak z pohledu spotřebitele, a zde to PhysX jednoduše nezvládl.

          Že další vývoj stojí peníze a nvidia už to (pravděpodobně) nechce dotovat, to je jen potvrzení toho, co píšu výše. Kdyby tento krok s přechodem na BSD licenci nastal před několika lety, věřím, že by se uchytil, jenže tehdy to byl nástroj marketingu (viz dále), a jako takový byl zcela vycucán a následně odhozen.

          A ještě k tomu marketingu: PhysX (myšleno ten „zajímavý“, tedy akcelerovaný přes GPU) byl (zne)užit k vizuálním orgiím, nikoli reálné fyzice her, což jej v očích většiny spotřebitelů pasovalo do role zbytečnosti a nakonec vedlo k úpadku. Dílem proto, že běžnou zjednodušenou fyziku zvládaly procesory (kde konkurence existuje a ne zrovna malá), dílem proto, že prakticky nikdo z vývojářů AAA her (a leckdy ani těch indie) nebyl schopen nabídnout komplexní fyzikální prostředí jako princip či lákadlo, nebo jedno z hlavních lákadel vlastní hry.

      • „PhysX je mrtvej“ – to si nemyslím… Nicméně je fakt že mi připadá víc využívaný Havok

        „nesplnil NV ocekavani a davaji od nej ruce pryc“ – to mi taky nepripada na vyvoji dale pracuji. Spis ho hodlaji vic rozsirit a vyuzit i jinde.

        Ted me jeste zajima zda je to opravdu tak otevrene, ze si to bude moct treba AMD ci Intel prizpusobit. Zatim je podpora pro CUDA a pro CPU… Cili zda bude podpora treba pro OpenCL.

        • „o mi taky nepripada na vyvoji dale pracuji. Spis ho hodlaji vic rozsirit a vyuzit i jinde.“.. mas nejake info, ze ho dale rozvijeji, krome nejakeho marketingoveho „bla bla“ ?
          Ja bych si spis tipnul, ze budou drzet nejaky povinny support, ktery maji te nasmlouvany a postupne to utnou uplne a nechaji na komunite. Usuzuji tak podle jinych projektu, ale treba se mylim 🙂

          • Maji prijit i novy revize a pokud to chteji vyuzit i jinde, tak na vyvoji budou makat i dal. Proto si nemyslim ze davaji ruce pryc.

            Pokud to pujde vyuzit i na AMD a Intel GPU tak doufam ze se to ujme a konecne tu fakt budeme mit fyziku ve hrach.

            • Ale tady se v obecne rovine taky mluvi o tom, ze PhysX je/bude utlumeny.. „PhysX is kind of “done” now, and more-or-less in maintenance mode (*)“.. je to sice s poznamkou, kde se rika jeste neco o dalsi verzi, ale to si nemusi protirecit.
              Ja jsem z toho pocit, ze by se to v soucasne dobe melo dal nejak vyznamneji rozvijet nenabyl.

            • Ani netvrdím, že by sa mal teraz nejak intenzívne rozvíjať. Len že v tom článku, na ktorý som dal odkaz sú informácie o PhysX rovno z prvej ruky. Ako to bude s týmto API ďalej, netuším. Jediné čo viem je, že to nie je žiadna mŕtvola. A to ani v hernom priemysle.

            • Tak pokud se kolem toho vytvori vyvojarska komunita, tak to muze nabrat i zajimavy dalsi smer.

      • mrtvej určitě není, jak zmiňují diskutéři nade mnou. Jen co se herní oblasti týče tak PhysX dnes už jako „lákadlo“ ke koupi grafické karty nikoho neosloví, obzvláště když tu máme teď nový buzzword jménem Raytracing 🙂

        PhysX byla dojnou kravičkou Nvidie a bezesporu přidanou hodnotou jejich grafických karet. Kravička se ale už vyčerpala a dneska toho mnoho nenadojí a tak přichází její nástupkyně ala TRX a ta má vemeno pořádně plné 😀

      • Jediný kdo je tady mrtvej je grafická divize AMD. Takže jestli měli nějak navrhnutou Navi, tak zpět k rýsovacím prknům a předělat a přidat PhysX, aby si o ovečky čekající 12 let na pořádnou grafickou akrtu, mohli taky zahrát s PhysX. A už se těším na ty veletoče AMD funboys jak zbytečná fíčura to je, jak si to ve hrách vypínají, protože to snižuje výkon a pod… 😀 😀 😀

        • Byla to past na tebe aby jsi dodal sám důkaz proti AMD hype fun boyům o tom, že PhysX je zlo od nVidie, které ničí hry, snižuje výok a nevím co ještě… A za všechno to zlo a zlou PhysX může nVidia… Krásně ses chytil jak vosa na med. AMD fanoušci jsou blbečci a nVidia si s nimi královsky vytírá zadek.

          • Mno 🙂 A teď tu o červené karkulce prosím 🙂
            Jako já beru že ICT nerozumíš a snažíš se být jen rádoby zábavný… Ale když už Tě někdo upozorní na chybu tak nemáš mlít hlouposti, ale říct aha tohle jsem nevěděl dík 🙂
            Ty neIT Guru 🙂 A kdyby ses pořád do lidí nenavážel a neurážel, tak bych Ti dal i pokoj 🙂

            • Crha
              přilláč tohle bylo slabý teda… Určitě to umí líp!

              Koukám Jarouškovi už praská cévka 😀

              Hele tak nepiš kraviny… ať Tě nemusíme pořád opravovat 😉 Ty co vypotíš to jedna hovadina za druhou… Prostě Tě jen uvádím do reality no…

              A jak jsem už psal je humorný jak troll začne bulet, když mu to někdo vrací 😀 Jaroušku Jaroušku… Co s Tebou…

            • ty tvoje fantasy příběhy z druhé ruky jsou sranda, prej že brečím… trapáku, neumíš číst, vymejšlíš si a bliješ stejný exkrementy jako tvůj teplej bratr trombóza.

            • To už bylo lepší Jaroušku už jsi i přibral někoho dalšío na palubu, ale stále nic moc… Ještě přitlač čekám neco fenomenálního něco hodného CRHA GURU!

              Ty hele já si rád ty Tvý příbehy z druhé tuky přečtu tož se pochlub 🙂

              Já mám zatím bohužel jen tvrdou realitu a ta Ti zrovna nesvědčí… Tak sem zvědavý na ty fantasy šup sem s nimi 🙂

            • Běháš za mnou jak ocásek, a poštěkuješ na mě jak nějaké malé štěně, hafity hafity hafff…nejspíš jediného co budeš mít tvrdé bude tvůj mozek.

            • tak to bylo zas o nicem Jasousku…
              a uz mas tu fantasy povidku? hafity hafff to urcite neni to sis zas spletl… A to uz nema nic spolecneho s HW cece umis Ty vubec neco?

      • JJ. Netreba ale zabúdať, že už AGEIA si upravila PhysX pre svoje potreby a NV ho za posledné roky kompletné prepísala a vylepšila. Dnešný PhysX s tým, ktorý NV prebrala od AGEIA nemá nič spoločné. Udržoval sa tak v rámci SDK 2.x. SDK 3.x je jeho kompletný prepis od základov, ktorý už obsahuje aj podporu moderných inštrukcií a natívnu podporu možnosti behu na viac vláknach.

        • To jiste ano predelali si to prvni k obrazu svemu a potom to postupne zacali poustet i ven. Prcni na CPU a teď konečně i jako OpenS. Rikam snad to pujde upravit i na OpenCL a budou to chtit pouzivat Intel i AMD. Aspon jeden by stacil v tu chvili by to bylo 2 na 1 a ten posledni by byl da se rici prinucen se pridat. No uvidime. Snad budou jednou hry kde bude opravdu fyzika a ne jen poletujici blbiny…