Jedinica za obradu fizike

**Jedinica za obradu fizikčkih kalkulacija** ( **PPU** ) je namjenski mikroprocesor dizajniran za upravljanje proračunima fizike, posebno u dijelu koji je zadužen za video igrice . To je primjer hardverskog ubrzanja.

Primjeri proračuna koji uključuju PPU mogu uključivati dinamiku krutog tijela, dinamiku mekog tijela, detekciju sudara, dinamiku toka, simulaciju kose i odjeće, analizu konačnih elemenata i lomljenje objekata.

Ideja je da specijalizovani procesori skinu dugotrajne zadatke sa CPU-a (glavnog procesora) računara, slično tome kako GPU izvodi grafičke operacije umesto glavnog CPU-a. Termin je skovao Ageia da opiše svoj PhysX čip. Nekoliko drugih tehnologija u CPU-GPU spektru imaju neke zajedničke karakteristike, iako je Agein proizvod bio jedini kompletan koji je dizajniran, plasiran, podržan i postavljen u sistem koji je isključivo PPU.

## Historija 
Rani akademski istraživački projekat vezan za PPU  pod nazivom SPARTA (Simulacija fizike na arhitekturi u realnom vremenu) izveden je na Pen Stejtu  i Univerzitetu Georgia. Ovo je bio jednostavan PPU baziran na FPGA koji je bio ograničen na dvije dimenzije. Ovaj projekat je proširen na znatno napredniji sistem baziran na ASIC -u pod nazivom HELLAS.

U februaru 2006. izašao je prvi namjenski PPU PhysX iz Ageie (kasnije spojen u nVidia ). Taj modul je najefikasniji u ubrzavanju sistema čestica, uz samo malo poboljšanje performansi mjereno za fiziku krutog tijela. Ageia PPU je detaljno dokumentovan u njihovoj patentnoj prijavi u SAD #20050075849. Nvidia/Ageia više ne proizvodi PPU i hardversko ubrzanje za fizičku obradu, iako je sada podržano kroz neke od njihovih grafičkih procesorskih jedinica.

### Dodatne informacije o historijskom razvoju 
Pored navedenih projekata, razvoj PPU tehnologije bio je potaknut sve većim zahtjevima modernih videoigara i simulacija. Istraživački instituti i univerziteti diljem svijeta kontinuirano su radili na optimizaciji algoritama za fizičke proračune, što je dovelo do pojave hibridnih sistema koji kombinuju prednosti CPU, GPU i PPU tehnologija. Ovi napori su značajno unaprijedili sposobnost real-time simulacija, osobito u industrijama zabave i inženjeringa.

## AGEIA PhysX 
Prvi procesor koji je označen kao PPU nazvan je PhysX čip, a predstavila ga je fabrika za prozivodnju cipova pod nazivom AGEIA. Igre koje žele da iskoriste PhysX PPU moraju koristiti AGEIA-in PhysX SDK (ranije poznat kao NovodeX SDK).

Sastoji se od RISC jezgra opšte namjene koje kontroliše niz prilagođenih SIMD VLIW procesora sa plutajućim zarezom koji rade u lokalnim memorijama, sa svič-fabrikom za upravljanje transferima između njih. Ne postoji hijerarhija keša kao u CPU-u ili GPU-u.

PhysX je su prozivele tri kompanije, slično načinu na koji se proizvode grafičke kartice . ASUS, BFG Technologies, i ELSA Technologies su bili primarni proizvođači. Računari sa već instaliranim karticama bili su dostupni od proizvođača sistema kao što su Alienware, Dell i Falcon Northwest .

U februaru 2008. godine, nakon što je Nvidia kupila Ageia Technologies i na kraju prekinula mogućnost obrade PhysX-a na AGEIA PPU i NVIDIA grafičkim karticama sa aktivnim ATi/AMD, činilo se da je PhysX 100% otišao Nvidiji. Ali u martu 2008. Nvidia je najavila da će PhysX učiniti otvorenim standardom za sve, tako da će glavni proizvođači grafičkih procesora imati PhysX podršku u sljedećoj generaciji grafičkih kartica. Nvidia je najavila da će PhysX biti dostupan i za neke od njihovih već proizvedenih grafičkih kartica samo preuzimanjem novih drajvera.

### Dodatno o implementaciji i značaju PhysX tehnologije 
Nakon inicijalnog uspona, PhysX je postao temelj za razvoj mnogih videoigara koje zahtijevaju realistične simulacije fizičkih efekata. Zbog svoje sposobnosti da preuzme kompleksne proračune sa CPU-a, omogućio je programerima da kreiraju detaljnije i dinamičnije simulacije, što je rezultiralo poboljšanim vizuelnim i interaktivnim iskustvom. Fizički proračuni, koji su ranije bili preopterećeni na glavnom procesoru, sada se efikasnije obrađuju, čime se poboljšava i ukupna performansa sistema.

## Havok FX 
Havok Softver Divelopment Kit je glavni konkurent PhysX SDK, koji se koristi u više od 150 igara, uključujući glavne naslove poput Half-Life 2, Halo 3 i Dead Rising .

Da bi se takmičio sa PhysX PPU, izdanje poznato kao Havok FX trebalo je da iskoristi prednosti multi-GPU tehnologije od ATI ( AMD CrossFire ) i NVIDIA ( SLI ) koristeći postojeće grafičke za ubrzavanje određenih fizičkih proračuna.

Havok dijeli fizičku simulaciju na fiziku *efekta* i fiziku *igranja*, pri čemu se fizika efekta prenosi (ako je moguće) na GPU kao Shader Model 3.0 instrukcije, a fizika igranja se obrađuje na CPU normalno. Važna razlika između njih je ta što fizika *efekta* ne utiče na igru (prašina ili sitni ostaci od eksplozije, na primjer); velika većina fizičkih operacija se i dalje izvodi u softveru. Ovaj pristup se značajno razlikuje od PhysX SDK, koji premešta sve proračune na PhysX karticu ako je prisutna.

Od kada je Intel preuzeo Havok, Havkog FX je ukinut.

## PPU vs. GPU 
Pravac ka GPGPU je učinila GPU pogodnijim za posao PPU; DX10 je dodao integer tipove podataka, unificiranu arhitekturu shadera i geometrijsku fazu shadera koja omogućava implementaciju šireg spektra algoritama; Moderni GPU podržavaju računarske shadere, koji se pokreću preko indeksiranog prostora i ne zahtijevaju nikakve grafičke resurse, već samo bafere podataka opće namjene. NVidia CUDA pruža malo više načina komunikacije među nitima i radnog prostora u stilu scratchpad-a povezanog s nitima.

Ipak, GPU su izgrađeni oko većeg broja dužih kašnjenja, sporijih niti i dizajnirani su oko putanja podataka teksture i bafera okvira, i loših performansi grananja; ovo ih razlikuje od PPU i Cell kao manje optimizovanih za preuzimanje zadataka simulacije svijeta igre.

Codeplay Sieve kompajler podržava PPU, što ukazuje da bi Ageia physX čip bio prikladan za zadatke tipa GPGPU. Međutim, malo je vjerovatno da će Ageia nastaviti da bude na ovom tržištu.

### Dodatna komparativna analiza 
U usporedbi sa GPU-ima, PPU je specijalizovan za proračune vezane za fizičke simulacije, ali je često ograničen u svojoj svestranosti. Dok moderni GPU-ovi, zahvaljujući tehnološkim inovacijama, mogu izvršavati širok spektar paralelnih zadataka, PPU-ovi ostaju fokusirani na određene proračune, što ih čini vrlo efikasnim, ali i specifičnim za određene aplikacije. Ovo omogućava razvoj hibridnih sistema gdje se specifični zadaci delegiraju na PPU, dok se opći zadaci obrađuju na GPU-u ili CPU-u, čime se postiže optimalna raspodjela resursa.

## PS2 – VU0 
Iako se veoma razlikuje od PhysX-a, moglo bi se reći da je VU0 za PlayStation 2 rana, ograničena implementacija PPU. Nasuprot tome, PPU bi se mogao opisati PS2 programeru kao evoluirana zamjena za VU0. Njegov skup funkcija i postavljanje unutar sistema je usmjereno na ubrzavanje zadataka ažuriranja igre uključujući fiziku i AI; može osloboditi takve proračune radeći na svom vlastitom toku instrukcija dok CPU radi na nečem drugom. Budući da DSP mnogo više zavisi od CPU-a da bi obavio koristan rad u modulu za igre i ne bi mogao da implementira potpuni fizički API, tako da se ne može klasifikovati kao PPU. Takođe VU0 je sposoban da obezbijedi dodatnu snagu obrade, iako je to više svojstvo putanja u sistemu, a ne same jedinice.

Ova upotreba je slična Havok FX ili GPU fizici po tome što se opće namjene pomoćne jedinice s decimalom koristi za dopunu CPU u grafičkim ili fizičkim ulogama.

### Dodatna razmatranja o VU0 i modernim rješenjima 
Moderni konzolni sistemi i PC arhitekture razvijaju se ka integraciji specijalizovanih jedinica koje se mogu fleksibilno rasporediti prema zadacima. Usporedbe između VU0 i savremenih PPU rješenja pokazuju da su rani koncepti dali temelj za razvoj današnjih naprednih sistema, gdje se specijalizovane jedinice koriste kao pomoć CPU-u i GPU-u, čime se postiže veća efikasnost i realističnost u simulacijama.

## Vidi također 
* wiki.nesdev.com Poznate_PPU_revizije
* UA6528 Cijena i zaliha

## Reference 
Kategorija:Pages with unreviewed translations