Efectele Havok accelerate pe GPU AMD/ATI – amenintare pentru PhysX?

Scris de: , in categoria: Editoriale, in 22 March, 2009.

Efectele fizice din jocurile destinate PC-urilor au inceput sa capteze atentia abia dupa ce o companie mica (dar inimoasa), Ageia, a inceput sa comercializeze o placa speciala ce oferea accelerare hardware acestora; in plus, spectaculozitatea noilor efecte, denumite PhysX de catre Ageia, parea sa atinga un nivel superior, fiind considerate la momentul lansarii un mare pas inainte in incercarea de a face jocurile pe calculator cat mai realiste posibil.

Scurt istoric

Fiind nevoiti sa vanda acele componente hardware separate, cei de la Ageia au investit masiv in promovarea PhysX, si lasau impresia celor mai putin informati ca aceste efecte sunt singurele cu adevarat importante in industrie.

In realitate insa, majoritatea jocurilor foloseau deja un motor de accelerare software dezvoltat de catre Havok, in prezent fiind peste 150 de jocuri disponibile care utilizeaza SDK-ul Havok (lista cu jocurile deja finalizate o gasiti aici, si pe cea cu cele aflate in dezvoltare aici) si aproximativ 80 (cu tot cu jocurile nefinalizate inca, lista aici) care folosesc SDK-ul PhysX (mai exact NovodeX).

Intel a achizitionat Havok in anul 2007, anuland totodata proiectul Havok FX, ce permitea procesarea efectelor fizice de catre o placa video precum Nvidia sau ATI, sarcina ramanand in continuare exclusiva a procesorului central (eventual Intel).

In anul 2008 a fost randul celor de la Ageia sa fie cumparati de catre Nvidia, care a eliminat rolul PPU (physics processing unit) ca o componenta independenta, reusind sa implementeze accelerarea efectelor PhysX via CUDA (solutie GPGPU) pe procesorul grafic Nvidia. SDK-ul PhysX a devenit gratuit, insa cei de la AMD/ATI nu s-au inghesuit sa-l foloseasca, desi conform reprezentantilor acestora constituia una din optiunile considerate ca fiind viabile.

Anuntul propriu-zis

Ajungem astfel cu relatarea in anul de gratie 2009, alaltaieri mai exact, cand un oficial ATI a dezvaluit ca pe 26 martie in cadrul GDC 2009 va face prima demonstratie publica a accelerarii efectelor fizice Havok de catre un GPU ATI. Astfel, Havok FX renaste.

De asemenea, un aspect deosebit de important trece neobservat deocamdata de catre toti comentatorii de specialitate: OpenCL si AMD Stream stau la baza solutiei fizice ATI/AMD.

OpenCL, CUDA for C (Nvidia CUDA), C for Throughput Computing (Intel Ct) si Brook+/CAL (AMD Stream SDK)

Am sa va explic foarte pe scurt  cateva aspecte legate de aceste limbaje de programare (gasiti o explicatie extinsa intr-un articol foarte recent behardware).

In primul rand OpenCL este un standard deschis, aflat sub patronajul Khronos Group, in timp ce CUDA for C, C for Throughput Computing si Brook+/Cal sunt limbaje de programare (/SDK-uri) proprietare Nvidia, Intel, respectiv AMD.

OpenCL a fost initiat anul trecut de catre Apple si apoi perfectionat cu ajutorul unor echipe AMD, Intel si Nvidia, din dorinta de a oferi si altor producatori in afara de Nvidia (proprietara CUDA) sansa de a-si construi un instrument (bazat pe un limbaj de programare primar, „standardizat”) capabil sa valorifice intregul potential al anumitor componente din sistem.

La intrebarea „este OpenCL concurenta CUDA?”, raspunsul ar fi ambiguu: „oarecum”. Si asta pentru ca OpenCL constituie doar baza (API de nivel inferior) necesara optimizarii pentru fiecare componenta din sistem in parte (in cazul GPU de exemplu, acesta necesita un API de nivel superior la OpenCL, printr-o extensie din nou proprietara AMD/Nvidia/Intel).

Ce castiga Intel si ATI, ce poate pierde Nvidia

Cand am citit pentru prima data stirea legata de anuntul AMD pe site-ul bit-tech.net, m-am intrebat de ce a facut Intel acest pas; mai ales ca pana acum le permisese doar celor de la AMD sa implementeze pentru procesoarele acestora x86 suport pentru SDK-ul Havok.

In primul rand, PhysX constituie pentru Nvidia in acest moment o valoare adaugata pentru produsele din portofoliul sau si un avantaj competitiv in raport cu concurentii sai, in principal AMD/ATI momentan.

La sfarsitul acestui an insa, Intel va lansa Larrabee, prima sa incercare de procesor grafic dedicat (arhitectural imprumutand elemente specifice atat procesoarelor X86, cat si celor grafice „clasice” precum Nvidia/ATI), ce poseda o caracteristica esentiala pentru relatarea de fata: va folosi un set de instructiuni exclusiv x86 (cu extensii pentru Larrabee).

Intrebarea care se pune, si la care momentan nu va pot da un raspuns, este „nu cumva solutia GPGPU Intel are la baza OpenCL?” si, mai particulara decat atat, „nu cumva OpenCL va sta la baza efectelor fizice Havok pentru Larrabee?”. Aceasta intelegere AMD-Intel pare a da un raspuns, in sensul zicalei „ajuta-ma sa te ajut”: Intel ingaduie celor de la AMD sa accelereze acele efecte fizice Havok pe procesoarele grafice AMD/ATI in schimbul folosirii OpenCL (in dauna folosirii exclusive a Stream). Acest subiect (OpenCL vs. CUDA in principal) va fi tratat insa pe larg intr-un articol viitor, ce va aborda inclusiv presupusa intentie a Nvidiei de a produce procesoare x86.

Asadar, Intel si AMD vor sa dea o lovitura Nvidiei prin sprijinirea comuna a SDK-ului Havok; Nvidia poate pierde astfel o batalie, cea a efectelor fizice… insa cum s-ar putea realiza o eventuala departajare intre Havok si Physx?

Criterii relevante pentru „consumatori” de diferentiere a efectelor fizice

Am folosit termenul de „consumatori” pentru a defini doua categorii de utilizatori de PhysX/Havok: producatorii de jocuri si gamerii (utilizatorii finali).

Din punctul de vedere al producatorilor de jocuri, criteriile pot fi urmatoarele:

  • imaginea de marca pe care respectivele efecte o au in randul gamer-ilor;
  • usurinta folosirii setului de instructiuni suplimentare necesar realizarii efectelor si usurinta atingerii unui nivel superior al spectaculozitatii din punct de vedere al programarii aditionale necesare (care solutie tehnica are un raport mai bun efect obtinut/efort necesar);
  • cointeresarea (de orice natura) si influenta la nivel de lobby a producatorilor hardware implicati;
  • necesitatea de putere de calcul pe care folosirea unui anumit tip de efecte o implica (cerintele minime de sistem, gradul de incarcare al acestora si raspandirea in randul gamer-ilor a hardware-ului necesar accelerarii).

Din punctul de vedere al gamer-ilor, criteriile pot fi urmatoarele:

  • calitatea efectelor fizice,  „spectaculozitatea” acestora (acest aspect tinand mai mult de iscusinta si priceperea programatorilor si dezvoltatorilor jocului in cauza);
  • cat de mult afecteaza activarea respectivelor efecte „jucabilitatea” (cadrele pe secunda – techgage a realizat singurul test in materie, demonstrand ca la rezolutii mari si cu detalii spre maxim, la care placa video e oricum extrem de solicitata, e mai bine ca procesorul sa accelereze efectele fizice);
  • raspandirea in randul jocurilor favorite (sau de calitate) a efectelor fizice in cauza.

Este clar astfel ca ambele categorii de „consumatori” vor trebui sa faca o alegere; primii a SDK-ului folosit in conceperea jocului, iar ultimii (cei informati) a placii video ce urmeaza a fi achizitionata.

Optiunile Nvidiei

Marturisesc ca si eu sunt foarte curios cum va reactiona Nvidia dupa demonstratia din 26 martie; aceste reactii vor fi atat imediate, cat si pe un termen mai lung.

Daca pana la urma va renunta Nvidia la PhysX, aceasta decizie va surveni numai dupa analizarea atenta a pietei, si implicit a comportamentului cumparatorilor. Iar aceste studii vor viza perceptia PhysX ca valoare adaugata produselor Nvidia de catre cumparatorii potentiali, si cat de relevanta este aceasta in luarea deciziei de achizitie a unei placi video (/produs) Nvidia.

O eventuala sustinere neconditionata a tehnologiei PhysX ar putea fi ineficienta din punct de vedere economic, atata timp cat aceasta investitie nu va avea un corespondent direct in rezultate financiare palpabile, provenite exclusiv din sustinerea acestei tehnologii.

Odata ce Nvidia va alege (daca va dori acest lucru) la un moment dat sa adopte accelerarea efectelor Havok de catre procesoarele grafice din propriul portofoliu, acesta va desemna primul pas in renuntarea la sustinerea PhysX. Motivatia este simpla de altfel si provine dintr-unul din criteriile mentionate mai sus – producatorii (responsabili) de jocuri vor alege acel SDK de efecte fizice care va putea fi accelerat pe cat mai multe configuratii potentiale.

Pe de alta parte insa, daca Nvidia va reusi sa faca din PhysX o tehnologie foarte interesanta atat pentru producatorii de jocuri, cat si pentru publicul larg pana in momentul lansarii de catre Intel a procesorului grafic Larrabee, atunci este posibil sa vedem si un AMD care va juca „la doua capete”, adaugand suport inclusiv pentru Physx; in acest sens, deja PC-ul nu mai este singura platforma implicata, PhysX fiind disponibila gratuit si pentru Playstation, Wii sau Xbox 360 (pentru ultima existand si 2 jocuri ce au implementat Physx).

In incheiere, nu pot sa nu ma pun in locul gamer-ului obisnuit. Nu mai ramane decat ca marii producatori sa se implice intr-un fel si intr-o lupta concurentiala in care miza sa fie dezvoltarea celui mai bun gameplay, si totul ar fi perfect.

Comentarii

5 comentarii la: Efectele Havok accelerate pe GPU AMD/ATI – amenintare pentru PhysX?

    1. Monstru a scris pe:

      In mod normal ar trebui sa se ajunga la utilizarea unui API comun, acceptat de catre intreaga industrie ca si standard. Va fi interesant sa vedem care tehnologie va fi adoptata pe larg. Electronic Arts, 2K Games si THQ au semnat deja acorduri cu Nvidia pentru implementarea PhysX in jocurile lor, ceea ce imi spune ca Nvidia nu vor renunta prea curand la PhysX.

    2. CristiN Post author a scris pe:

      Si eu sper sa nu trebuiasca sa cumpar doua placi video (una ATI, alta Nvidia) pentru a putea juca la detalii maxime doua jocuri diferite. Un nou razboi al formatelor, de data asta in randul efectelor fizice, nu este deloc bun pentru gamer-i.

      Oricum, lucrurile sunt deocamdata intr-o faza incipienta, abia peste minim un an cred ca se vor limpezi apele.

      Legat de partea cu producatorii care au semnat cu Physx (la fel cum Blizzard sau LucasArts sau Microsoft Studios folosesc Havok), nu mi se pare un detaliu extrem de important pentru gamer-i din cel putin patru puncte de vedere:

      1. Gamer-ii nu asociaza mereu jocul preferat de producatorul jocului respectiv;

      2. Este greu de preconizat succesul pe care jocurile dezvoltate de respectivii producatori mentionati de tine il vor avea in randul jucatorilor.

      3. Este greu de preconizat calitatea efectelor fizice din jocurile respective, precum si impactul acestora asupra fps-ului, deci e greu de preconizat care va fi experienta (pozitiva/negativa) a jucatorului.

      4. Nu cunoastem toate detaliile respectivelor contracte, deci nu putem sti cu siguranta daca TOATE jocurile viitoare dezvoltate de respectivii producatori vor folosi exclusiv tehnologia physx (contracte deci de exclusivitate); Electronic Arts de exemplu va dezvolta un joc – Saboteur – care foloseste efecte Havok, desi a semnat si cu Physx.

      Intr-adevar, pe termen scurt e greu de crezut ca Nvidia va renunta la PhysX. Pe de alta parte, atat Physx cat si Havok pot fi la fel de ,,falimentare” precum jocurile care le vor ingloba, producatorii de jocuri putand apela inclusiv la efecte fizice produse ,,in-house”.

    3. Putin probabil o amenintare, dar cine stie.

    4. HyP^ a scris pe:

      O mica rectificare, e Larrabee 🙂

      Mi-a placut articolu’, numai bine !

    5. Ilie Laurentiu a scris pe:

      Din cate am la cunostinta placile ATI suporta deja cu tehnologia actuala de constructie Nvidia PhysX ,numai ca nu oficial.AMD va lansa sigur un soft de optimizare si pentru PhysX desi nu oficial.Probabil va fi pus pe un forum sau ceva de genul si va aparea ca si testele PhysX facute pe ATI ,facut de catre nu stiu ce iranian.
      Si astfel Nvidia va ajunge undeva jos , ATI ruland bine cu ambele.(Havok si PhysX).

    Lasa-ne un comentariu: