La CPU di PlayStation 3 impiegata seriamente con Folding@home

La CPU di PlayStation 3 impiegata seriamente con Folding@home

Folding@home è un programma medico realizzato dall'Università di Stanford per lo studio del folding delle proteine.

di pubblicata il , alle 16:01 nel canale Videogames
PlaystationSony
 
195 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
Marko9117 Marzo 2007, 16:41 #111
Originariamente inviato da: yossarian
peccato che, nella maggior parte dei casi, in un'elaborazione grafica i colli di bottiglia sono a livello di pixel pipeline (e li rsx deve cavarsela da solo). Per il resto hai fatto un elenco di cose già note e che non dimostrano che il cell può fungere da gpu (come qualcuno sostiene). In quanto ai dati numerici teorici, il consiglio è di prenderli sempre con il beneficio del dubbio

Siamo d'accordo. Infatti non sostengo che il Cell possa essere usato come una GPU ma che possa fare molto bene alcune delle operazioni di cui solitamente si occupa la GPU.
Non ho mai letto però di sviluppatori che si lamentavano per colli di bottiglia nelle pixel pipeline, cosa invece accaduta per i vertex shader.
non sono le pipeline ad avere latenze più o meno alte ma l'insieme di architettura e operazioni che si fanno svolgere ad una determinata pipeline. Mi induci a pensare che tu non abbia idea del perchè le pipeline delle gpu sono multithreaded



Non sono un esperto, sono solo appassionato (e per giunta da pochi mesi) quindi perdonami errori e imprecisioni.
In ogni caso, non avevo mai sentito parlare di queste latenze elevate nel Cell. Anzi ero sicuro che fosse un processore con una elevatissima efficenza.
yossarian17 Marzo 2007, 16:58 #112
Originariamente inviato da: Marko91
Siamo d'accordo. Infatti non sostengo che il Cell possa essere usato come una GPU ma che possa fare molto bene alcune delle operazioni di cui solitamente si occupa la GPU.
Non ho mai letto però di sviluppatori che si lamentavano per colli di bottiglia nelle pixel pipeline, cosa invece accaduta per i vertex shader.


invece è esattamente il contrario; d'altra parte, basta analizzare l'evoluzione di unità del numero di pixel shading unit e di vertex shading unit negli utlimi anni (in R580, ad esempio, il rapporto è di 6:1; in G7x anche, se tieni conto del fatto che le 24 pixel pipeline hanno un potenziale teorico di 27 flops ciascuna contro le 10 delle vertex pipeline e 48 alu contro 8).

Originariamente inviato da: Marko91

Non sono un esperto, sono solo appassionato (e per giunta da pochi mesi) quindi perdonami qualche errore.
In ogni caso, non avevo mai sentito parlare di queste latenze elevate nel Cell.
Anzi ero sicuro che fosse un processore con una elevatissima efficenza.


le pipeline del cell sono molto semplici dal punto di vista architetturale. Questa semplicità fa si che in alcune operazioni risultino molto veloci ed efficienti; di contro, in altre operazioni, questa semplicità diventa un handicap. Una delle situazioni problematiche è quella che ho esposto prima, ossia quando si deve fare texturing; in tal caso, una pipeline single threaded non ha la possibilità di mettere in attesa un thread mentre aspetta i dati mancanti e passare al successivo; al contrario, deve terminare la prima elaborazione per poi passare alla seconda; questo significa che tutti gli altri thread aspettano in coda la conclusione del primo (il che si traduce in cicli di clock sprecati). Al contrario, all'interno di una pipeline di una gpu possono girare contemporaneamente decine di thread e, di volta in volta, il chip è in grado di metterne uno in stand by (mentre aspetta i dati per il suo completamento) e passare ad un altro. Per questo motivo il cell non potrà mai sostituire una gpu (risulterebbe tremendamente inefficiente).

Quindi, non è corretto dire che le pipeline del cell hanno elevate latenze, ma che non sono in grado di mascherare le latenze (perchè non sono strutturate per eseguire in maniera efficiente calcoli che prevedano elevate latenze)
R@nda17 Marzo 2007, 17:23 #113
Bhe...se una GPU non era necessaria Sony non avrebbe messo l'RSX nella Ps3.
Però i tool Edge, come lavorano e cosa in grado di fare, non sono ne chiacchere ne numeri teorici, sono stati mostrati agli sviluppatori e qualcuno li starà anche usando internamente per i propri titoli Sony.
E vedo che in giro sono stati ben accolti.

Tutto questo cosa centra con folding non lo so....però no, il Cell non può sostituire una Gpu.
^TiGeRShArK^17 Marzo 2007, 17:37 #114
Originariamente inviato da: rusty71
x GabrySP
esatto sono il difensore mascherato della ps3 (mascherato non tanto).

e questo si era capito
io dal canto mio preferisco difendere la corretta informazione anche se così facendo vado contro il marketing sony e faccio alterare i fedeli discepoli
Sulla gestione della grafica sul cell basta che clicchi sul link del mio ultimo post. ciò che ho detto è ciò che scrivono tre tecnici di ibm e, senza offesa per nessuno, mi pare abbiano le palle (senza censura) più quadrate di ^TiGeRShArK^ e yossarian. con me potrebbero fare anche i fighi, ma li vorrei vedere coinvolti in discussioni tecniche con i tecnici di ibm, secondo me ne escono male.

Se sono discussioni in ambito di pipeline grafiche potrebbe essere che io non esca bene dato che le conosco "quanto basta" e, a differenza di yossarian, non lo faccio per lavoro.
Per quanto rigurada la programmazione ti assicuro che non sfigurerei affatto
per quanto riguarda la tua personale opinione del cell "non è ne carne ne pesce", sarà interessante riprenderla tra un anno o due, quando di questo processore si conosceranno i limiti reali.

E perchè non sarebbe possibile conoscerli?
Forse tu non li conosci, ma sapendo come è strutturato è semplice ricavarne i limiti e i punti di forza per chi è un addetto ai lavori.
un'altra cosa, il cell ha come nucleo una cpu general purpose su architettura ppc che viaggia a 3.2Ghz con una memoria xdr ram che viaggia alla stessa velocità del processore, se ti sembra poco per il general purpose non so che dirti.

eh la miseria...
dovremmo essere stupiti da tutte queste cifre ?
Iniziamo con ordine.
La memoria XDR è prodotta dalla RAMBUS ed è il successore della memoria RIMM, famosissima per aver stroncato le vendite dei primi pentium 4 basati sul chipset camino (i820 ke tra l'altro era anche buggato in quanto non gestiva correttamente + di due moduli se non erro) e successivi (mi pare fino all'i850 se non sbaglio).
Il problema principale era dato dalle elevatissime latenze per gli standard dell'epoca ed è stata facilmente sbaragliata dalle DDR.
Infatti, non so se hai notato, ma oggi sui PC, e, cosa + importante nelle skede video, montiamo tutti DDR nelle varie versioni e non certo RAMBUS
Quello che tu chiami, giustamente, il nucleo del Cell è la PEE ed è basata su un core PowerPC molto semplificato e per giunta in-order.
Non mi stancherò mai di ripetere quanto poco siano efficienti le architetture in-order rispetto a quelle out of order utilizzate ad esempio sulle cpu di classe x86 (Ma non solo dato che anche i PowerPC erano ovviamente out of order).
Inoltre come diceva giustamente yossarian la PPE spreca anche cicli di clock per gestire le varie SPE.
il cell, come sicuramente saprai (notizie vecchie oltre 5 anni, riportate da playstation magazine) è nato proprio grazie a sony che intendeva progettare un processore rivoluzionario per la sua nuova console che poi ha coinvolto ibm e toshiba (in quanto possessori delle tecnologie adatte allo sviluppo dello stesso), tutto per dire che il cell è adattissimo per programmare giochi, ma non adatto a programmatori non molto pratici (posso fare un riferimento ai tempi dell'amiga, vi ricordate della tiertex? http://www.spaziogames.it/content2/...mes.asp?id=163).

mmmm..
mi stai dicendo che secondo te dei colossi come Ibm e toshiba si sono messi a progettare un processore in funzione di sony?
Dovresti sapere che gli investimenti per progettare una nuova architettura sono MOLTO ma MOLTO onerosi, e infatti il Cell è stato progettato come uno STREAM processor, ovvero un processore che eccelle nell'elaborare flussi continui di dati.
Ora di deve vedere quanto i giochi possono essere assimilibabili a flussi continui di dati.
A mio parere questo NON è assolutamente il campo principe del cell.
E infatti ci sono molti altri campi in cui le sue prestazioni sono molto superiori (vedasi il folding@home tanto per dirne uno).
chiudo dicendo che la ibm sta tenendo dei corsi per insegnare la programmazione del cell (lo sta facendo anche m$ per quanto riguarda windows vista), quindi se qualcuno fosse realmente interessato si può rivolgere direttamente ad ibm, altrimenti si possono continuare a scrivere delle stupidaggini su questo processore, tanto non cambia niente.

Io non ho bisogno di fiondarmi in qui corsi dato che il mio onesto lavoro da programmatore ce l'ho.
Se dovessi cambiare cambierei sicuramente per andare a lavorare con un azienda del calibro di ToughtWorks o Google.
Altro ke ps3
Sai com'è...prediligo lievemente la ricerca ai giokini
un'altro piccolo appunto è che considerando l'sdk della ps3, considerando che il cell non è nè carne nè pesce, non mi pare che i giochi fin qui usciti per la ps3 siano così male, considerato anche che dai rumors, il kit di sviluppo usato per programmare questi giochi era quello col cell a 2.4Ghz.

comunque, e qui chiudo davvero, mi sembra strano che le tre aziende coinvolte nel progetto cell abbiano tirato fuori, dopo anni di studi e di spese, una ciofeca (IMHO)..

al tempo l'ardua sentenza


Ancora non hai capito che l'unico che sta dicendo che il Cell è una ciofeca sei tu?
Il cell è un ottimo processore per fare le cose per cui è stato pensato.
Però non mi pare che sia stato pensato APPOSITAMENTE per i giochi come tu e qualcun altro volete far ceredere
^TiGeRShArK^17 Marzo 2007, 17:56 #115
Originariamente inviato da: rusty71
da ^TiGeRShArK^
In che modo può il Cell aiutare l'RSX nella grafica?

*Con Lair ci si concentra molto, oltre che sul sistema di controllo, sulla componente grafica. Il gioco di Factor 5 supporta nativamente la risoluzione full HD, mentre l'audio non è compresso e in 7.1. Il motore grafico supporta le seguenti tecniche: Progressive Mesh, renderizzata direttamente dal processore CELL, consente un elevato livello di dettaglio; HDR, la quale garantisce un maggior realismo nelle illuminazioni; fisica dinamica in tempo reale, ciò vale anche per i liquidi; Parallax Shader ed effetti volumetrici.

http://www.hwupgrade.it/articoli/vi...l-2007_11.html*

non mi intendo molto di grafica (anzi per niente) però posso dire questo: o il progressive mesh fa parte dei vari effetti grafici gestiti dalla gpu, quindi, o i factor 5 (mitico turrican) hanno fatto un bel lavoro facendolo svolgere al cell, oppure mi sono sbagliato e chiedo scusa.

Io stavo parlando di grafica e non di geometrie.
E non è un errore non voluto, ma l'ho scritto appositamente.
Il + grosso limite dell'RSX è proprio la pipeline grafica con i giochi odierni.
Potrebbe essere che in futuro ciò non sarà + vero se verranno predilette le trasformazioni sui vertici e sulle geometrie, ma solo in quel caso il Cell potrà essere d'aiuto alla RSX.
R500 d'altro canto può affrontare tranquillamente lo stesso problema di un eventuale sbilanciamento dei giochi verso i vertex shaders dato che come ben saprai è un progetto a pipeline (vertex e pixel)unificate.
x yossarian

il link da me postato parla di un sistema (quindi singolo) basato sul cell (quindi potrebbe essere anche una ps3) può produrre immagini in ray-trace a 720p a frame rate "interattivi" (non ho capito cosa vuol dire, se qualcuno riesce a tradurre meglio), anche per scene moderatamente complesse contenenti più di 1 milione di poligoni. visto che te ne intendi, per una cpu non è un risultato abbastanza soddisfacente? un core duo della intel riesce a fare meglio?

mmmm..
mi sa che devo riportarti la traduzione CORRETTA allora dato che a quanto pare la tua era un pò approssimativa
Originariamente inviato da: English Version]
Even though the PS3&
[quote=Versione Italiana]
Nonostante l'RSX, il chip grafico della PS3, sia inaccessibile da Linux, il nostro piccolo sistema, attraverso la rete, controllerà diversi Server Blade IBM QS20 per renderizzare il modello complesso, in real-time, utilizzando una tecnica di ray-tracing software. Utilizzando la scalabile tecnologia di rendering IBM iRT, la PS3 è in grado di scomporre ogni frame in diverse sotto-sezioni di grandezza opportuna e di distribuirle dinamicamente ad altre Blade o ad altre PS3 per essere renderizzate.

quindi, come puoi chiaramente vedere dalla traduzione corretta, per renderizzare quella scena (alla ridicola velocità di 2 FPS tra l'altro ) non hanno utilizzato una sola PS3 ma hanno utilizzato un cluster di Blade e di PS3.
Se vuoi paragonarla col Core duo, allora la risposta è: si un cluster di core duo potrebbe* benissimo fare di meglio.

*il potrebbe dipende da n-mila fattori che non sto a spiegarvi.
Criceto17 Marzo 2007, 17:59 #116
Originariamente inviato da: ^TiGeRShArK^
Quello che tu chiami, giustamente, il nucleo del Cell è la PEE ed è basata su un core PowerPC molto semplificato e per giunta in-order.
Non mi stancherò mai di ripetere quanto poco siano efficienti le architetture in-order rispetto a quelle out of order utilizzate ad esempio sulle cpu di classe x86 (Ma non solo dato che anche i PowerPC erano ovviamente out of order).


Sì ma non esageriamo con questa storia dell'in-order!!
Ok, è meno efficiente, ma mica il processore va 10 volte meno!!!
Ho visto dei test dove i Cell della PS3 vanno mediamente la metà di un G5 di pari frequenza. Ma quest'ultimo ha più cache e soprattutto il doppio delle unità intere e FP, quindi il fatto che sia in-order conta fino ad un certo punto!! E0 semplicemente un core semplificato. Se ne mettono 2 vedi che alla fine è simile al G5.
Inoltre se l'architettura è stabile, o con JIT tipo LLVM, si può spostare l'ottimizzazione in fase di compilazione ed avere praticamente le stesse prestazioni (almeno in teoria) di una ben più complessa architettura out-of-order. Che poi è l'approccio utilizzato da Intel su Itanium.
^TiGeRShArK^17 Marzo 2007, 18:10 #117
Originariamente inviato da: Marko91
Il Cell può renderizzare facilmente parecchi milioni di poligoni,

Nessuno lo mette in dubbio.
Non certo in real-time però
fare displacement mapping,

questo mi sa che rientra nella geometria se non erro.
radiosity,

qualche informazioni su come il cell possa gestire il radiosity in real-time di scene quanto meno paragonabili come complessità a quelle dei gioki odierni?
No..perchè mi sento *lievemente* scettico su questa tua affermazione
[U]alleggerire la scena per RSX[/U](culling), fare geometry shading,calcolare la fisica di parecchie migliaia di corpi ed è perfetto per la fluidodinamica.

E queste ultime rientrano tutte nella geometria e nella fisica.
Ora..come può il cell aiutare l'RSX nella grafica, o se preferisci meglio, nella pipeline grafica?
A parte le cose da te enunciate su cui sono MOLTO dubbioso e preferirei avere un link che quanto meno comprovasse la tua tesi, quasi tutto quello da te nominato si riferisce alla geometria e alla fisica.
Ma non mi pare che io stessi parlando di quelle
Logicamente non può compiere tutte queste operazioni contemporaneamente visto che il numero delle SPE è limitato a 7 di cui 1 è riservata ad altri compiti.
Gli sviluppatori hanno a disposizione quindi 6 per il gioco.
In un futuro non troppo lontano, il Cell su Ps3 si occuperà di renderizzare i poligoni e RSX di rasterizzarli, e probabilmente i vertex shader di RSX saranno meno utilizzati.

e che utilità avrebbe sovraccaricare le SPE del cell per lasciare non sfruttate le unità destinate al calcolo dei vertici dell'RSX?
Te lo dico io. Nessuna.
L'unico motivo per utilizzare le SPE del cell per calcoli di geometria sarà quando le unità interne di RSX non ce la faranno + dato che come ben sai questo chip non è dotato di un design a shaders unificati.
Quindi, se in futuro ci si sbilancerà di + verso la geometria, allora il cell metterà una pezza effettuando queste operazioni sulle sue SPE, e quindi sacrificando risorse di calcolo che potrebbero essere occupate per qualcos'altro.
Alcune informazioni tratte da Beyon3D e dal sito ufficiale dei nuovi tool di sviluppo:
http://forum.beyond3d.com/showthrea...9185&page=2
http://www.gfdata.de/archiv03-2007-gamefront/2881.html


Credo sia molto interessante.

Si..interessante notare soprattutto come per la scena che contiene la massiccia geometria siano impiegate ben 5 SPE... non mi pare resti molto altro per altri usi
@yossarian: non credo che le pipeline delle SPE abbiano una latenza alta, non l'avevo mai letto prima.

PS: Con questo post non vorrei passare per una fanboy Sony, non lo sono proprio.

Le latenze del Cell, se confrontate con quelle di una GPU hanno latenze + elevate dato che il Cell non è affatto pensato per essere utilizzato come una pipeline grafica, e infatti è strutturalmente poco adatto.
Ma qui non so precisamente tutti i dettagli di una pipeline grafica e immagino che yossarian ci potrà illuminare molto di +.. io dal canto mio immagino che manchino registri temporanei in maniera sufficiente e che soprattutto la quantità di unità di calcolo del Cell è molto inferiore rispetto a quella delle moderne GPU.
(Basti pensare all'elevatissimo numero di pixel pipeline presenti nelle schede odierne..mi pare che siano in un numero BEN superiore a 7 )
^TiGeRShArK^17 Marzo 2007, 18:16 #118
Originariamente inviato da: rusty71
ok, basta, mi arrendo. vi dispiace se consiglio ad ibm e a sony di assumervi come responsabili della nuova cpu per la play 4?

Il mio lavoro infatti non è progettare CPU.
E' programmarle.
anche se non nego che l'architettura delle varie CPU mi ha sempre appassionato e le conosco piuttosto bene.
secondo me ne viene fuori uno z80 ;-)

Con gli strumenti e il know-how attuale in uqel campo immagino che persino tu riusciresti a cavare fuori qualcosa di meglio di uno Z80
yossarian x questa frase "e cosa ne sai che non ne abbiamo già discusso?" vinci l'oscar del dubbio. da questo momento cercherò di non discutere di cose tecniche, anche a causa della poca conoscenza (penso di tutti). cmq, siamo tutti così bravi che invece di essere da qualche altra parte a programmare qualcosa per la ps3 (data la profonda conoscenza del cell da parte di qualcuno) siamo qui a mostrare chi ce l'ha più lungo e a sbolognare dati e opinioni che non stanno nè in cielo nè in terra (sopratutto da parte mia).

E tu che ne sai cosa facciamo noi nella vita?
ah..bhè....
allora....
visto che ti interessa tanto la mia vita sappi che da lunedì dubito che potrò rispondere dato che starò una settimana in olanda x lavoro
^TiGeRShArK^17 Marzo 2007, 18:18 #119
Originariamente inviato da: yossarian
un spe ha una singola pipeline di tipo single threaded (mi riferisco a quella che effettivamente svolge i calcoli). 8 SPE equivalgonmo a 8 pipeline single threaded; una gpu come G7x, ha 24 pixel pipeline multithreaded. Durante un'elaborazione, ci sono operazioni con latenze molto elevate (ad esmepio quelle di texturing; d'altra parte, alla ATi non sono degli idioti, eppure, con la serie X1xx0 hanno utilizzato texture cache di tipo fully associative, complicando non poco l'architettura del chip, pur di ridurre al mininmo il rischio di cache miss). Immagina che un spe stia svolgendo un task che richiede l'applicazione di una texture (oil che nelle pixel pipeline capita piuttosto di frequente ). L'elaborazione si arresta in attesa del dato mancante; se la pipeline fosse multithreaded, il task potrebbe essere messo da parte, in attesa del dato e, nel frattempo, le alu potrebbero iniziare a processare il task successivo. In un spe, al contrario, succede che l'elaborazione si blocca fino a che non arriva la texture (il che può voler dire anche centinaia di cicli persi).

ottima spiegazione
^TiGeRShArK^17 Marzo 2007, 18:23 #120
Originariamente inviato da: Criceto
Allo stesso tempo lo sbilanciamento per il calcolo vettoriale (e solo a singola precisione, perchè alla PS3 bastava) ha penalizzato l'utilizzo general-pourpose, tanto che un Cell in quest'ambito pare essere circa 4 volte più lento di uno Xenon dual core (il massimo della tecnologia Intel). Quindi Apple non ha ritenuto di impiegarlo (anche se sui test di Photoshop avrebbe comunque potuto dichiarare che il Mac con Cell era 5-10 volte più veloce di un PC) ed è passata ad Intel.

bhè....
la apple riesce sempre a dire che il suo nuovo prodotto è 5-10 volte + veloce di qualcos'altro
Certo rimangono molti ambiti dove il Cell eccelle, dove le CPU sono troppo generiche e le GPU troppo specializzate. Ma le GPU in particolare stanno sempre più andando a pestare i piedi dove il Cell è forte, quindi a questo punto la sua utilità inizia ad essere dubbia. Ma non credo lo sia ancora e penso che si ritaglierà il suo spazio come coprocessore o per oggetti multimediali da mettere sotto la TV o simili. Per esempio per l'iTV avrei visto 1000 volte meglio un Cell del centrino che hanno utilizzato.

infatti è + o - la mia idea.
Certo ancora non si può dire perchè le GPGPU sono ancora ad uno stato praticamente embrionale...
Però sembrano una tecnologia molto promettente.

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
 
^