|
|
|
![]() |
|
Strumenti |
![]() |
#41 | |
Bannato
Iscritto dal: Jun 2004
Messaggi: 4607
|
Quote:
Quando escono nuovi modelli con architettura Power sono sempre molto migliori dei corrispettivi Intel. Poi però quest'ultima recupera piano piano perchè da una parte ha spesso dei processi produttivi più moderni, dall'altro aggiorna i suoi processori con una frequenza molto superiore. L'hai notato anche tu che i G5 avevano potenza simile (dove più dove meno) ai corrispettivi Intel/AMD dell'epoca con la metà dei transistor. Solo gli attuali CoreDuo 2, ad esempio, hanno un'unità vettoriale con una potenza paragonabile a quella dei G5 di 5 anni fà. |
|
![]() |
![]() |
![]() |
#42 |
Registered User
Iscritto dal: Feb 2005
Messaggi: 1856
|
anche a me i processori power mi hanno sempre affascinato, solo che al giorno d'oggi o dai un x86 o 64, cioè che ci giri windows o non si fa più niente. come prendere i soldi spesi per il progetto e buttarli via.
proci power ok, ma non ditemi che il cell andrebbe bene dai, ha soloun procio powerpc e il rest sono unità SPE per il calcolo in virgola mobile e quel processore serve per la maggior parte a gestire il traffico alle varie spe, per cui è una caccola per un desktop anche se paragonato ad un g5, ma andrebbe bene come unità di calcolo esterna magaria via bus hypertransport3.0 di amd o quella tecn di intel simile. poi ormai secondo me windwos vista lo dovevano fare solo a 64-bit così chi aveva i 32 si teneva XP e amen, chi aveva i 64 aveva un os migliore di quello che è adesso visto che si sarebbero aumentati gli sforzi solo per i 64, e noi utenti linux stiamo bene da entrambe le parti. azz e poi però quei piccoli ma indispensabili programmi closed source come flash .... |
![]() |
![]() |
![]() |
#43 | |
Senior Member
Iscritto dal: Jan 2002
Messaggi: 3300
|
Quote:
Guadavo l'altro giorno le caratterisitche delle Wildcat VP e ho imporvvisamente avuto un Dejavue rispetto alle HD2900XT di cinque anni dopo ![]() E dire che non ricevettero il bollino DX9 perchè troppo "programmabili" e poco strutturate ![]()
__________________
If ain't broken keep tweakin' till it will! Ultima modifica di Lud von Pipper : 22-05-2007 alle 22:44. |
|
![]() |
![]() |
![]() |
#44 |
Senior Member
Iscritto dal: Apr 2007
Città: Napoli IN Provincia :asd:
Messaggi: 1700
|
Ma è stupendo..innovazione IBM Style..magari scendesse nella competizione desktop..ma credo che preferisca la nicchia!
|
![]() |
![]() |
![]() |
#45 |
Member
Iscritto dal: Jun 2006
Messaggi: 236
|
L'architettura POWER è superiore all'x86, ecco tutto. Solo che a noi, utenti consumergeneralpurpose non interessa nulla, non è roba per ambito domenstico.
Non a caso il 970 (o G5, derivato dalla POWER4) era usato da Apple per Xserve e PowerMac, tanto costosi quanto diffusi in campo lavorativo, ma non certo domestico. Anche perchè inadeguati e scomodi, ho un iMac G5 vecchio stampo e posso dire che scalda davvero troppo. Ma perfetti per il professionale, dove non devi fare "di tutto un po'" ma poche operazioni, pesanti, ripetitive: calcoli, flussi audio, flussi video, vettoriale, eccetera eccetera eccetera... |
![]() |
![]() |
![]() |
#46 |
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
mah..
ke stupidi alla IBM.. buttare 5 anni in R&D quando avevano già il cell ke, a detta di molti qui sul forum, fa miracoli ![]() ![]()
__________________
![]() |
![]() |
![]() |
![]() |
#47 |
Senior Member
Iscritto dal: Jan 2005
Città: Milano
Messaggi: 1971
|
Bene, quindi con un piccolo investimento di un 50K€ potrò far girare Crisys?
![]() |
![]() |
![]() |
![]() |
#48 |
Member
Iscritto dal: Jun 2006
Messaggi: 158
|
Dando una letta alle specifiche della AltiVec devo dire che erano un bel po avanti rispetto ad Intel e soci.
http://it.wikipedia.org/wiki/AltiVec |
![]() |
![]() |
![]() |
#49 |
Senior Member
Iscritto dal: Jun 2003
Città: vivo in Sicilia (tra la prov. di AG e Palermo)
Messaggi: 956
|
Cell non è solo un processore difficile da programmare, è più che altro uno stream processor, un "grosso dsp", e basta. E' buono per quel tipo di lavoro, lo svolge egregiamente, macina grandi moli di dati organizzati in flussi continui, ma non va bene in ambito desktop/general purpose, perchè non è progettato per quello. E non c'è ottimizzazione che tenga (a meno di voler impiegare mille mila millenni per rilasciare un software e fare profiling a manetta e ottimizzazioni/riscritture direttamente in assembly, con tutte le conseguenze del caso). Perchè? perchè gli x86 sono processori out-of-order, cell invece è in-order, e questo vuol dire che ogni qual volta si presenti un "problema" di salti/dipendenze/accessi alla ram cell se ne sta fermo a rigirarsi i pollici, sprecando cicli di clock, gli x86 invece, per quanto possibile (perchè miracoli divini come la creazione dell'universo non se ne possono fare), vanno avanti, colmando ogni gap prestazionale fino a ribaltarlo. Oltre tutto, storicamente gli x86 (o meglio, i CISC), rispetto ai RISC (ma qui rischiamo a entrare in empasse impelagandoci in una diatriba infinita), tendono ad essere più facili da programmare e ottimizzare, ottenendo da subito dei risultati molto validi (magari non eccelsi, ma comunque con un ottimo rapporto tra risultati e tempi di ottimizzazione del software, perchè non richiedono grandissime ottimizzazioni per andar bene - in un certo senso, l'unità out-of-order ha proprio il compito di ottimizzare al volo il codice per le esigenze del momento, oltre all'ottimizzazione generica fatta dal compilatore - mentre i risc - che poi non sono più risc puri da una vita, così come non esistono più i cisc puri - li superano sulla lunga distanza e prevalentemente in ambiti specifici, che necessitano di grande ottimizzazione).
Per quanto riguarda il discorso degli A64/cpu AMD in generale, diciamo che non brillavano troppo (anzi, ai tempi degli xp stavano anche dietro, ma tutto sommato si difendevano) con quegli applicativi fortemente ottimizzati per le istruzioni SSE, ma ho il vago presentimento che la situazione si ribalterà decisamente con i k10: le SSE sembrano essere sempre state pesantemente influenzate dal clock del processore, e qui i pentium si ritrovavano avvantaggiati rispetto agli athlon, che dal canto loro avevano un'implementazione a 64 bit (il che vuol dire che dovevano spezzare un'istruzione vettoriale da 128bit in due da 64 ed eventualmente comporre il risultato), eppure si difendevano (specialmente se non si scontravano con HT, perchè comunque i compilatori non producevano codice vettoriale "troppo" ben ottimizzato, sfruttando appieno le istruzioni su dati a 128 bit - poi ci sarebbe il discorso dei compilatori Intel che castravano il codice non destinato alle proprie cpu); ora il clock è simile, e la nuova architettura, tra le varie migliorie, ha portato l'esecuzione delle SSE da single-64bit a dual-128 bit, il che vuol dire, in teoria (nella pratica poi intervengono le contingenze dell'esecuzione, l'ottimizzazione del codice ecc.), prestazioni in virgola mobile vettoriali da 2 a 4 volte superiori alle attuali (le altre migliorie aumenteranno ulteriormente le prestazioni complessive). |
![]() |
![]() |
![]() |
#50 |
Senior Member
Iscritto dal: Jun 2003
Città: vivo in Sicilia (tra la prov. di AG e Palermo)
Messaggi: 956
|
@diabolik1981
la collaborazione tra amd e ibm, oltre al soi, riguarda anche la litografia a immersione che verrà usata per i 45 nm, e un materiale particolare che useranno sempre a partire dai 45nm. Non mi stupirebbe se condividessero anche il progetto di ibm per "infilare" i nanotubi di carbonio nei transistor (mi pare che si otterrebbe un cambio di stato con un solo elettrone), chiamato "distruzione costruttiva), di poco differente dalla litografia attuale (anzi, sfrutterebbe la litografia per eliminare alcuni difetti) e, quindi, con costi simili (il costo maggiore attualmente è proprio la produzione di nanotubi). Non mi stupirebbe nemmeno se un domani delle unità come le spe del cell finissero dentro alle cpu amd, accanto ai core gpu, per completare il progetto di cpu multicore con un "cuore" costituito dagli x86 di amd, le gpu ati come coprocessori gpgpu (e gpu proprie) e i coprocessori più generici che potrebbero essere di derivazione power (ma anche dei core gpu particolarmente ottimizzati come coprogessori "general purpose", se amd vorrà produrre tutto in casa). @fgpx 78 Mi sa che hai fatto un po' di confusione... sono 8MB di cache e 300GB/s di picco come banda. @myrdrwin Si, ma quella descrizione si ferma alle SSE2 (siamo arrivati alle sse4), non tiene conto dell'architettura a 64 bit (i registri "ufficiali" sono raddoppiati), ed è comunque un po' imprecisa (ad esempio non dice che, comunque, si possono eseguire un'operazione sse ed una mmx contemporaneamente, con altri registri dedicati alle mmx, che comunque le cpu x86 hanno degli altri registri interni, oltre a quelli "accessibili" dal software, cioè indirizzabili attraverso le istruzioni, che servono per far girare i dati e ridurre ulteriormente gli accessi alla memoria, e che le unità vettoriali degli x86 in genere sono più di una). |
![]() |
![]() |
![]() |
#51 | |
Bannato
Iscritto dal: Jun 2004
Messaggi: 4607
|
Quote:
![]() Sai qual'è una delle più interessanti novità del Power6 in oggetto? E' che pare GLI ABBIANO TOLTO LA LOGICA OUT-OF-ORDER per snellirlo e farlo andare più veloce!! E nonostante questo SPACCA il ![]() E' un DSP anche il Power6, ora? |
|
![]() |
![]() |
![]() |
#52 | |||||
Senior Member
Iscritto dal: Jun 2003
Città: vivo in Sicilia (tra la prov. di AG e Palermo)
Messaggi: 956
|
Quote:
Quote:
![]() ![]() Forse però ti sfugge un po' il significato "vero" di dsp, e la potenza che serve ad un dsp, visto che ne parli quasi come se fosse un' "offesa", uno spregiativo che ti fa incavolare se lo si "affibia" a un processore che ti piace... un dsp non è altro che un processore progettato ed ottimizzato per elaborare molto efficientemente grosse moli di dati continui, "vettorializzati", tipicamente in realtime - come fa il cell con le sue notevoli capacità nel decoding di più streaming audio/video in alta definizione contemporaneamente, che talvolta può avere un'architettura particolare (detta di Harvard), diversa dallo schema della macchina von Neumann, ovvero può usare due memorie separate, una per i dati e una per le istruzioni, e vi accede separatamente, ma non è una caratteristica "vincolante" di un dsp; in questo senso (è una piccola curiosità), le unità vettoriali (o SIMD che dir si voglia - Single Instruction Multiple Data, una singola istruzione elabora un vettore di dati), come AltiVec, MMX, SSE, PowerNow (l'equivalente - e concorrente, prima delle sse - delle MMX di AMD), non fanno altro che aggiungere delle caratteristiche diciamo "simil dsp" a processori che dsp, per natura, non sono (un esempio di dsp "puro" è l'enligth 256, progettato da una società israeliana di cui non ricordo il nome con una tecnologia futuristica - è un processore "ottico", usa dei laser e delle lenti per effettuare i calcoli, e ha una potenza di calcolo notevole - ed è praticamente in grado di svolgere solo calcoli vettoriali - tipo una moltiplicazione righe per colonne di due matrici "al volo", anzi, operando su dati di 8bit, moltiplica una matrice 256x256 per un vettore con 256 elementi 125 milioni di volte al secondo... se dici ai progettisti che l'essere un dsp è una brutta cosa ti scorticano vivo ![]() ![]() Quote:
E poi, cosa c'entra l'essere in-order oppure out-of-order con la velocità "pura" nel calcolo intero, o in virgola mobile, che poi è quello che misuri con benchmark come SPEC (cioè la potenza bruta, "pura" )? Mica l'essere out-of-order può aumentare la velocità del processore! Semplicemente, e scusa se è poco, lo aiuta a sfruttarla meglio. Ti faccio un esempio semplice: supponi di dover fare una certa operazione, e di non avere a disposizione i dati da elaborare nè nei registri, nè nella cache, dovrai accedere alla ram, che però è molto più lenta del processore. Ecco: un processore IN-ORDER, che, come dice il nome, esegue le istruzioni nello stesso ordine in cui si presentano, smetterà di eseguire i calcoli per attendere i dati dalla memoria, e finchè non arrivano non farà nient'altro, perdendo dei cicli preziosi (per la decodifica video e molti calcoli scientifici pesanti, che fanno uso abbondandte di matrici/vettori, è diverso, perchè prelevi dalla memoria un cospicuo blocco di dati, lo elabori, e poi torni in memoria per copiare i risultati e prelevare il blocco successivo da elaborare, ma difficilmente dovrai tornarci nel bel mezzo dell'elaborazione, cosa che invece molto probabilmente accadrà con un'applicazione "generica" ); un processore OUT-OF-ORDER, invece, non ha bisogno di aspettare, perchè, come dice il nome, esegue le istruzioni fuori ordine, le riorganizza ed esegue quelle che non dipendono dall'operazione "bloccata" in attesa che arrivino i dati dalla memoria e anche quell'istruzione possa andare avanti, recuperando tempo prezioso. E poichè i processori x86 attuali hanno una logica out-of-order, sono di conseguenza più indicati dei processori in-order per il general purpose, nel senso che una generica applicazione che accede alla memoria in modo "sparso" e può avere molti salti difficilmente provocherà dei grossi rallentamenti (mentre un processore in-order, anche quando dotato di una maggiore potenza bruta, verrebbe rallentato, e quindi non sfrutterebbe a dovere la sua potenza). Quote:
![]() Ma di che stiamo parlando adesso? Del Power6? ma non dicevi che gliel'hanno tolta? Di Itanium? ma guarda che non l'ha mai avuta... neanche nella primissima versione, che effettuava una specie di riordino, ma ben diverso (la rotazione dei registri... a rotazione, appunto, e la effettuava perdendo dei cicli di calcolo - in realtà c'è ancora, essendo una delle caratteristiche principali della sua architettura, ma in Itanium 2 il problema è stato risolto, ottimizzando il tutto, però è qualcosa che nulla ha a che spartire con la logica ooo). A meno che non mi sia perso qualcosa e l'abbiano aggiunta di recente (in Itanium), ma non mi risulta ![]() Quote:
![]() NOTA a margine: ribadisco, dire che Cell, o in generale un processore privo di logica out-of-order, e di altri accorgimenti per "mascherare" frequenti accessi alla memoria (come i "trucchi" implementati in una gpu), ha prevalentemente un comportamento da dsp non vuol dire sminuirne la potenza, ma rendersi conto che si tratta di un processore molto specifico, che andrà da dio nei campi (limitati) per i quali è stato progettato, ma sarà meno efficiente nel general purpose (a parte il fatto che stiamo parlando di processori la cui potenza sarebbe ampiamente sottosfruttata in ambito desktop anche con una logica ooo, comunque, non avendola, verrebbero sfruttati ancora peggio; magari, data la potenza bruta non te ne accorgeresti, però resta il fatto che, a livello di architettura interna, non sono adatti allo scopo, e non vale la pena usarli, tutto qui). Poi, guarda che non basta togliere la logica ooo per trasformare una cpu in un (buon) dsp ![]() |
|||||
![]() |
![]() |
![]() |
#53 |
Bannato
Iscritto dal: Dec 2000
Messaggi: 2097
|
ho come l'impressione che tu stia dando perle ai porci, non solo non danno retta, ma per di più leggono quello che vogliono
|
![]() |
![]() |
![]() |
#54 |
Senior Member
Iscritto dal: May 2004
Città: Vicenza
Messaggi: 1520
|
Tanto per farsi un'idea di cosa si sta parlando...
![]() ![]()
__________________
![]() |
![]() |
![]() |
![]() |
#55 |
Bannato
Iscritto dal: Jun 2006
Città: Roma
Messaggi: 1993
|
che cosuccia sfiziosa
![]() |
![]() |
![]() |
![]() |
#56 |
Bannato
Iscritto dal: Dec 2000
Messaggi: 2097
|
in realtà quelle due foto dovrebbero riferirsi al power5 con 4 die dual core e 36 mb di cache
|
![]() |
![]() |
![]() |
#57 |
Bannato
Iscritto dal: Apr 2002
Messaggi: 3809
|
|
![]() |
![]() |
![]() |
#58 | ||||
Bannato
Iscritto dal: Jun 2004
Messaggi: 4607
|
Quote:
Sono stati utilizzati invece processori con Core PowerPC più semplici (i PPC 970 o addirittura, per il supercomputer più potente del mondo, dei processori derivati dai processori embedded, sempre con core PowerPC). Quindi, i Power vengono utilizzati proprio per quello che secondo il tuo modo di pensare OBBLIGHEREBBE il processore ad essere OOO. Tecnologia, tra l'altro, introdotta nei processori proprio da IBM con la il primo processore della serie Power. Semplicemente l'OOO non è la panacea. Può essere vantaggioso oppure no. Una volta per IBM lo era, ora non più visto i suoi ultimi core, Power6 INCLUSO. Questo dimostra che il fatto che il Core PPC del Cell non abbia l'OOO è stata una scelta progettuale ben precisa, perchè escludendolo evidentemente portava ad altri vantaggi (semplicità -> maggiore frequenza). Bada che i Cell dall PS3 sono a 90 nm, e girano più piano di quanto potrebbero per motivi di consumo. Pare che i Cell a 65nm possano tranquillamente superare i 5Ghz!! Quindi DSP una cippa! Il Cell è un processore general pourpose ottimizzato per flussi digitali. Per il "digital entertainment". Ma sempre GENERAL POURPOSE rimane. Scommetto che presto o tardi faranno un "SuperCell" con un Core Power6 e 4-8 SPU ottimizzate per il calcolo FP a doppia precisione. Allora sì ne vedremo delle belle!!! Quote:
Quote:
Sono benchmark abbastanza vari per includere tutti gli utilizzi. E tra l'altro, mi sembra, mono-thread. Gli Intel sono sempre stati particolarmente forti sugli "Spec-Int" e quindi sul general pourpose. Quote:
|
||||
![]() |
![]() |
![]() |
#59 | |
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
e allora perchè hanno buttato 5 anni in R&D anzikè fare uscire subito il "super cell" ke a tuo dire avrebbe dato la pappa anke al power 6? ![]() forse perchè cell e power 6 sono 2 processori incomparabili e il cell non potrà mai avere le prestazioni che ha il power 6 nei suoi ambiti di utilizzo? ![]() mah.. a leggere certi commenti sembra che gli ingegneri IBM siano tutti idioti ![]() ma mandategli un curriculum anzikè sprecare energie a postare sul forum dato ke da quello ke scrivete sembra quasi ke voi ne sappiate + di loro ![]()
__________________
![]() |
|
![]() |
![]() |
![]() |
#60 | ||
Senior Member
Iscritto dal: Jun 2003
Città: vivo in Sicilia (tra la prov. di AG e Palermo)
Messaggi: 956
|
Chiariamo un paio di punti:
1) general purpose NON è un sinonimo stretto di calcoli interi, benchè molte delle applicazioni che vengono considerate "general purpose", come ad esempio le suite da ufficio, facciano prevalentemente o esclusivamente uso di calcoli interi. Ad esempio, nel benchmark SPEC CPUInt2006 uno dei test effettuati sul calcolo intero riguarda la codifica video in h.264, e l'encoding video, lo ripeto di nuovo così forse ce lo ricordiamo meglio, è un tipico campo di utilizzo dei dsp, ma non è certo l'unico in cui si hanno elaborazioni "da dsp" che si effettuano su interi: molti calcoli complessi (compresa la trasformata di fourier) si risolvono con metodi numerici, ovvero trasformando le formule complicate (o meglio, pesanti da calcolare in virgola mobile) con cui si ha a che fare in serie numeriche, riconducendosi ad un insieme di somme e moltiplicazioni possibilmente su valori discreti (interi), con pochi salti e operando su dati "sequenziali" (fondamentalmente stiamo parlando di elaborazione numerica di segnali, ma non solo). Ripetiamo, così forse ci entra in testa: intero non vuol dire necessariamente general purpose, amen! (anzi, adesso aggiungo qualcosa che forse ti sconvolgerà: la maggior parte dei dsp tratta SOLO interi...). 2) Che Itanium sia mai stato il processore più veloce in assoluto sugli interi, forse l'hai sognato: purtroppo i risultati con spec2000 sono stati ritirati dal sito, ma mi bastano quelli con spec 2006 (che oltretutto sono più complicati) per mostrarti come, ad esempio, nei test sulla pura velocità (speed test), le migliori configurazioni con gli Opteron se la giochino con le migliori configurazioni di Itanium 2, e a volte stanno davanti, specialmente nella versione "base" dei test (senza le ottimizzazioni di compilazione concesse nella variante che misura i valori di picco) e con molta meno ram (sul sito dei test si dichiara che i test sono volutamente dipendenti dalla ram, per valutare le prestazioni complessive del sistema, anche se non si tiene conto del sottosistema di IO), e se la giocano ancora, ma stavolta stanno praticamente sempre davanti, anche nel picco, a parità di numero di core nel sistema, anche nella variante del test sugli interi che misura il throughput di sistema, e ancora con meno ram (piccola nota: i test spec non sono di per sè multithreaded, non producono cioè thread, ma nemmeno li vietano, perchè alcuni/molti degli algoritmi impiegati si prestano ad una buona parallelizzazione automatica ad opera di compilatori speciali, pertanto, se per il tuo sistema possiedi un simile compilatore, puoi sfruttare più di un core e ottenere ancora un risultato valido per lo speed test; per il throughput di sistema si fanno girare più copie (task) dei test, in un numero arbitrario che va indicato, tipicamente una per ogni processore). Ma forse tu ti riferivi a quanto affermato all'inizio della press release di ibm, cioè alla superiore velocità (fino a 3 volte o più) rispetto al Superdrome HP, che è un sistema con 128 core di Itanium 2; tuttavia quel risultato è ottenuto dividendo per il numero di core presenti nel sistema il risultato di un altro test (nel quale, comunqu, il risultato più alto raggiunto rimane quello di Itanium, e vorrei vedere con 64 cpu dual core contro 16 dual core...), il TPC-C, che però io prenderei un po' con le molle nell'interpretarlo: misura i risultati ottenuti da sistemi eterogenei (quanto a tipologia e numero di processori, ram, ecc. ma lo fa anche spec, e in entrambi i test vengono indicate le configurazioni) messi sotto stress da pesanti transazioni su database, usando però database diversi (che vengono indicati, ma bisogna anche tenere conto della diversità degli algoritmi per valutare i risultati), e ho visto solo Itanium e power a confronto (in verità c'erano un paio di xeon, ma non ho visto nessun opteron, ed è un peccato, perchè macinano bene i database e il confronto sarebbe più completo, ma dipenderà dalla "buona volontà" di qualcuno nel testare anche sistemi con opteron, come acade con spec). Poi, non capisco perchè insisti nel vantare l'assenza della logica ooo come fosse importante nell'aver ottenuto un risultato migliore rispetto a quello di un'altra architettura senza logica ooo: non stai dimostrando che la logica ooo non sia importante nel "general purpose" (che ripeto ancora, non si riduce al calcolo intero, così come calcolo intero non equivale strettamente a general purpose), ma solo che un'architettura senza ooo può essere migliore di un'altra architettura senza ooo nei calcoli interi, e questo a patto di assumere per vera la tua affermazione sull'assenza di logica ooo nel power6... 3) Assenza che attualmente è sospetta ma non ancora nota per quanto riguarda gli interi (mancano i dettagli tecnici sull'architettura del power6), mentre si sa già (da tempo) che per quanto riguarda l'fpu la logica ooo è stata mantenuta... Quindi il tuo "SuperCell" con un cuore Power6 non sarebbe più un processore totalmente privo di logica out-of-order. Comunque, mi sapresti dare un link (ma mi va bene anche il titolo di un libro) ad una descrizione tecnica dettagliata del perchè e del come la logica ooo aggiunga una complessità tale da impedire od ostacolare l'aumento della frequenza di una cpu? La logica ooo opera principalmente sullo scheduler delle istruzioni da dare in pasto all'alu (o all'fpu), e prima di eseguire i calcoli. Il problema principale nell'aumentare il clock è la profondità delle pipeline: poichè ogni stadio dura un ciclo di clock, se voglio aumentare il clock devo rendere le operazioni in ogni stadio più veloci, e in genere il modo più semplice di farlo consiste nell'aumentare il numero di stadi; tuttavia, nel Power6 la profondità delle pipeline non è stata variata, mentre la frequenza è stata notevolmente incrementata, quindi è possibile che sia stata toccata anche, però questo non mi convince molto (ma naturalmente posso sbagliare), sia perchè la presentazione parla di un miglior parallelismo delle istruzioni nelle pipeline, e questo implica la necessità di un certo grado di riordino delle operazioni, per portare avanti (e quindi eseguire senza tener conto dell'ordine originario) le istruzioni che non presentano dipendenze (altrimenti rischi di bloccare una pipeline con delle istruzioni che non possono raggiungere lo stadio successivo perchè non possono accedere alle risorse necessarie), sia anche perchè un'architettura di derivazione Power ad elevata frequenza e in-order in casa IBM c'è già: si chiama Cell e ha delle pipeline più profonde del Power6, quindi ho il sospetto che il vero salto di qualità lo facciano altre migliorie, e la "complessità" della logica ooo potrebbe essere stata mantenuta, almeno in parte. 4) Quando affermi che: Quote:
Quote:
5) VLIW è tutto fuorchè un approccio "esotico": è semplicemente una delle tante architetture RISC, e neanche recentissima, con un formato istruzione a lunghezza fissa (caratteristica rigorosamente RISC) e istruzioni di lunghezza "notevole", che consentono un maggior numero di istruzioni (caratteristica un po' meno risc, per definizione) e, soprattutto, di gestire un numero elevato di registri interni (caratteristica peculiare di Itanium). 6) Un processore ottimizzato per i flussi digitali è, per definizione, un DSP! Le SPE di Cell sono dei veri e propri "floating point dsp ", che eseguono operazioni vettoriali prevalentemente su interi (ricordi le elaborazioni numeriche di cui parlavo al punto 1? ecco, è il campo di applicazione più tipico dei dsp) e su dati in virgola mobile in singola precisione (a 32 bit, altra esigenza tipo di un dsp per usi "particolari" ) e sono in order; sono capaci anche di calcoli in doppia precisione (i dati double, per capirci), ma con delle limitazioni notevoli e un notevole calo prestazionale (diventano fino a 4 volte più lente; del resto, il ricorso ai double è già raro in software (molto) ottimizzato, se non è strettamente necessario, e praticamente inesistente negli algoritmi da dsp); non possono funzionare da sole ma devono essere pilotate dall'unità PPE. Questa è l'unica parte veramente general purpose di un Cell, anche se è in-order, ma non potrebbe essere altrimenti, perchè è moooooolto castrata: ha due alu, ma è multithreaded, quindi ciascun thread in esecuzione può sfruttare solo un'alu, ad esso dedicata; ha un'unità altivec, ma anche questa è "striminzita", e, al pari delle SPE, è lenta con i double; in pratica è buono solo perchè ha caratteristiche tali da far girare un sistema operativo tradizionale (le spe non potrebbero), e per smistare il lavoro alle SPE; per il resto, sarebbe probabilmente surclassata anche da un G4, che ha più unità elaborative, più potenti e le gestisce al meglio perchè out-of-order (ma la ppe di un Cell non ha unità di calcolo "sufficienti" a giustificarne una gestione ooo; comunque, le prestazioni complessive risentono inevitabilmente dalla bontà del compilatore). In una serie di test, IBM ha mostrato come si riesca a sfruttare a fondo la potenza di calcolo parallelo di un Cell con delle moltiplicazioni matriciali ottimizzate (devo ripetere che anche questo è un campo di applicazione di un dsp? ); inoltre, ha intenzione di utilizzarlo come coprocessore matematico abbinandolo ad altre cpu veramente general purpose, della famiglia power ma non solo: probabilmente impiegherà anche degli intel e degli amd (presumibilmente in base alle esigenze/richieste del cliente), quindi tanto general purpose non lo definirei... Ti suggerirei di approfondire l'argomento con questi articoli da arstechnica: 1 e 2, più questa news, e di leggere l'articolo su wikipedia. In ogni caso, avevo anche detto che le unità SIMD aggiungono funzionalità da dsp anche agli x86, personalmente non considero un'offesa pensare che un pezzo del processore che sta dentro al mio case è un dsp, non capisco perchè ti dia tanto fastidio chiamare cell dsp (che è una definizione riduttiva per certi versi, ma più calzante rispetto a general purpose, fosse solo perchè un "general purpose" qualsiasi non è capace delle prestazioni di un Cell come dsp, ma il rovescio della medaglia è che un Cell non può mantenere le stesse ottime prestazioni nel "general purpose" ). Forse nutrivi qualche speranza che Apple cambiasse idea, facesse marcia indietro e tornasse ad usare qualcosa di "different" e più potente (nei sogni dei suoi aficionados)? Be', mi dispiace deluderti, ma ti devi rassegnare... E comunque, che Cell si comporti prevalentemente come un dsp è un dato di fatto, le caratteristiche tecniche e i test condotti sull'encoding audio/video e sul calcolo matriciale "pesante" lo dimostrano e confermano oltre ogni ragionevole dubbio. Amen. Comunque, ho come l'impressione che tu abbia le idee un po' confuse sull'architettura di un calcolatore e su certe definizioni, quindi, prima di suggerire a qualcun altro di cambiare il proprio modo di pensare (e dirti le cose come stanno) solo perchè non si conforma al tuo (e non coincide con le tue conclusioni, lasciatelo dire, per lo più campate in aria), ti pregherei vivamente di approfondire gli argomenti a te sconosciuti o poco noti, magari studiando un buon libro, anche elementare (ci sono dei testi universitari molto molto semplici che trattano architetture di cpu "inventate" allo scopo, di tipo risc-like e molto semplificate, che forse ti chiariranno qualche dubbio, e ti daranno le basi per approfondire il concetto di pipelining, di cpu superscalare, di branch prediction e amenità simili, trovi molto materiale anche su internet, a patto di voler approfondire con nozioni tecniche serie e senza fermarti a qualche informazione superficiale e parziale, se non di parte, che potresti trovare, ad esempio, in qualche discussione di Apple fanboy o similare, e che magari potrebbe piacerti, ma non essere vera). Ultima modifica di xeal : 24-05-2007 alle 09:39. |
||
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 10:10.