di  -  giovedì 24 febbraio 2011

In una luminosa mattina californiana del novembre 2010, Jensen Huang, fondatore, presidente e CEO di NVidia, presentava la roadmap della “nuova NVidia”: la “prima NVidia” fu la compagnia “PC graphics”; la seconda, “Programmable GPU”; la nuova direzione della società è “NVidia: The Processor Company”. Non più solo computer grafica, quindi, ma una vera compagnia di microprocessori e GPU.

La nuova direzione è perfettamente comprensibile se si considera il “lato oscuro” della Legge di Moore: dire che “ogni due anni si raddoppia il numero di transistor per chip” equivale a dire che “ogni due anni la stessa funzione può essere implementata in metà dell’area”. Questo è quello che è successo a chi produceva chip audio: la maggior parte di noi, dieci o più anni fa, aveva una scheda audio discreta nel PC. Ma quello che allora richiedeva una scheda discreta, oggi viene implementato in un millimetro quadrato di silicio in un angolo di una CPU o GPU o chipset sulla motherboard. La corsa dell’alta tecnologia non perdona: se non si cresce si finisce all’angolo, accessorio di qualcun altro, con valore aggiunto nullo.

Dato abbastanza tempo anche una GPU potrebbe diventare un accessorio con poco valore aggiunto, implementata in pochi millimetri quadrati, nell’angolo di quella CPU che è e sarà il cuore del computer. Questa è la strategia di Intel per combattere i produttori di GPU: implementarle all’interno della CPU per farle scomparire come mercato indipendente. La strategia di NVidia, opposta, è quella di produrre GPU il più programmabili possibile, capaci di strappare compiti alla CPU e porsi come alternativa appetibile per la computazione ad alte prestazioni. In poche parole: “The Processor Company”.

Ma il mercato dei processori e del software è, contro-intuitivamente, molto conservativo: il numero di applicazioni e linee di codice e prodotti sviluppati per x86 è sterminato e nessuno ha il minimo incentivo a cambiare architettura e aggiornare l’intero parco software a meno di non ottenere vantaggi enormi… o a meno che non si aprano nuovi scenari in cui le precedenti regole e convenzioni non valgono più.

Questo è quello che sta succedendo in questi anni in due campi molto importanti:

  • mobile: il “mobile computing” è il nuovo PC: crescita esplosiva, molti produttori di processori e sistemi operativi in competizione, un futuro tutto da scrivere; c’è spazio per degli outsider come NVidia, e c’è spazio per produttori non x86
  • calcolo ad alte prestazioni (HPC): la terascale è ormai acqua passata, la petascale è stata raggiunta; la exascale è la prossima frontiera e non sembra che la si possa raggiungere semplicemente mettendo insieme alcune centinaia di migliaia di processori standard in rack; i problemi di consumo di energia e la banda richiesta per collegare le unità di computazione tra loro non sono più aggirabili: ci vuole qualcosa di nuovo, servono nuove architetture hardware e software per raggiungere l’obiettivo

Entrambe queste sfide rappresentano elementi di rottura col passato. Ecco che all’improvviso esiste lo spazio di manovra per un nuovo giocatore.

GPU: Il Core Business

Nonostante i recenti annunci (e la mia stessa introduzione) NVidia rimane una società GPU-centrica. Questo è ovvio, dato che la quasi totalità del suo know-how e dei suoi brevetti è legata al mondo della computer grafica. Prima di guardare ai nuovi mercati è quindi necessario vedere come procede il Core Business.

Fermi sarà ricordato più per i suoi problemi che per i suoi meriti. Nove mesi di ritardo sulla concorrenza e consumi imbarazzanti (almeno nella prima versione) è quello che la maggior parte di noi ricorderà. Ma Fermi è quasi alle spalle: c’è ancora qualche chip che deve uscire (il 550, il 590 e qualcosa per il mondo mobile) ma ormai è il 2011, e NVdia e AMD stanno ormai gareggiando per chi uscirà prima con le nuove architetture a 28nm. Kepler è a buon punto e dovrebbe arrivare da qualche parte nella seconda metà dell’anno, probabilmente insieme a Northern Islands. Dell’architettura successiva, Maxwell, è iniziato lo sviluppo e sono cominciati gli studi preliminari di quello che verrà dopo Maxwell. E nonostante il consumo “esagerato” le GPU Fermi possono essere dei processori molto efficienti per alcuni tipi di applicazioni: una GPU ha una potenza di picco di alcune centinaia di GFLOPS in floating-point contro le decine di una CPU; può consumare 3 volte tanto e comunque essere 3 volte più efficiente in termini di FLOPS/Watt (cioè operazioni al secondo per Watt). Non è un caso se il supercomputer oggi in cima alla Top500 è un ibrido di CPU e GPU.

Il problema che NVidia ha avuto con Fermi è lo stesso problema che Intel ebbe col Pentium4: in genere le compagnie continuano a spingere le prestazioni fino a che i chip non fondono e solo a quel punto si rendono conto che qualcosa non va e cambiano rotta. Intel lo fece abbandonando l’architettura Netburst e passando a Core, barattando la corsa ai GHz con al corsa ai core e ad una nuova attenzione all’efficienza energetica.

NVidia si è trovata collo stesso problema, con un po’ di anni di ritardo. Fermi è stato progettato per spingere al massimo le prestazioni a discapito del consumo di energia, ma questo compromesso non è più valido. Nei chip moderni il vincolo fondamentale non è più il numero di transistor che si riesce a mettere su un chip ma la potenza che si può dissipare. La legge di Moore ci dice che, anno dopo anno, possiamo mettere più transistor per unità di area, ma non ci dice come tradurli in potenza di calcolo utile. Oggi abbiamo raggiunto i limiti di calore dissipabile: le prestazioni sono vincolate unicamente dalla potenza termica. In altre parole, le prestazioni per Watt equivalgono alle prestazioni assolute, perchè non possiamo più aumentare il consumo di energia.

Kepler è la prima correzione di rotta che fa tesoro delle lezioni imparate con Fermi, allo stesso modo in cui Core fu la correzione di Intel a Netburst. Ma cambiare paradigma di progettazione (da performance-driven a power-driven) è molto complesso: richiede aggiornamenti delle tecniche di progettazione, delle metodologie di sviluppo e nell’educazione dei progettisti. Kepler è il primo passo e Maxwell farà ancora meglio, man mano che le nuove tecniche vengono affinate e le lezioni assimilate.

Ad ogni modo Kepler non sarà solo un “Fermi con alcune migliorie ai consumi” ma avrà parecchie innovazioni architetturali. Per quel che riguarda il GPGPU verranno supportate le nuove Computing Capabilities di CUDA che permetteranno di aumentare l’efficienza di utilizzo dei CUDA Core e diminuire il traffico avanti e indietro sul PCI-Express. I dettagli non sono ancora stati rilasciati al pubblico, ma è questione di pochi mesi ormai.

CPU: La nuova via

Gossip. Rumor. Indiscrezioni e smentite. Questo quello che per anni ha caratterizzato il “Progetto CPU” di NVidia, fino alla bomba sganciata da Jensen in persona al CES lo scorso gennaio: sì, NVidia sta progettando la propria CPU. No, non è x86: è ARM e si chiama Denver.

A posteriori la scelta appare quasi ovvia: non è possibile combattere contro Intel nel suo giardino di casa (x86), AMD ci ha provato per decenni e non è mai andata oltre il 20% di market share, e le risorse che NVidia può mettere in campo sono molto più esigue. Molto meglio andare con una architettura più moderna, con licenze più flessibili e che combatte in un mercato dove non esistono ancora leader monopolistici: insomma, un’architettura che lascia spazio di manovra ad una compagnia piccola ma aggressiva.

NVidia ha ottenuto una licenza architetturale (come quella che ha Qualcomm) che le permette non solo di usare i core standard sviluppati da ARM (come il Cortex A9 che equipaggia Tegra2 e Tegra3) ma anche di sviluppare i propri processori usando la ISA ARM. ARM ha annunciato da un po’ di tempo la sua intenzione di competere all’interno dello spazio server con soluzioni a basso consumo energetico; considerando la presenza di NVidia all’interno dello spazio supercomputer, una sinergia ARM + CUDA non è così assurda: un processore ARM ad alte prestazioni per il codice sequenziale accoppiato ad una GPU su cui eseguire del massiccio codice floating-point parallelo, in un approccio stile “Fusion” di AMD. Queste le armi che NVidia sta affinando per portare battaglia nel cortile di Intel.

Tegra2, Kal-El e altri supereroi

Ma la vera notizia di quest’anno per NVidia è, naturalmente, il successo di Tegra. Dopo anni infruttuosi, dove la piattaforma non ha ottenuto alcun successo commerciale, Tegra2 è stato l’evento del CES 2011, battendo (almeno in termini di numero di articoli pubblicati sui vari siti) il nuovo Sandy Bridge di Intel.

Nel giro 6 settimane sono stati presentati molti design win (prodotti Motorola, LG e Samsung), alcune soluzioni innovative e interessanti (Atrix), il primo sample funzionante di Tegra3 (appena 12 giorni dopo averlo ricevuto dalle fonderie taiwanesi) e il pezzo grosso: essere la Reference Design Platform per Honeycomb, la prima release di Android specificatamente progettata per i tablet. La borsa ha apprezzato, col titolo che è salito del 70% nel solo mese di gennaio.

Il motivo di questa rapidità nel presentare nuovi prodotti è probabilmente quello abbozzato da Anand: approfittare dell’essere abituati alla tradizionale velocità del mondo PC rispetto al mondo mobile per proporre una roadmap estremamente aggressiva e costringere i concorrenti a forzare le tappe (aumentando la probabilità di fare errori) o ad uscire dal mercato. Qualcomm e TI hanno risposto coi loro grossi calibri: Krait (core ARM “fatto in casa” dal team di Snapdragon) e OMAP5 (basato sul Cortex A15), i cui primi sample dovrebbero arrivare però quando ormai i primi prodotti Tegra3 saranno già usciti (o almeno questo è quello che NVidia ha lasciato intendere al World Mobile Congress: scopriremo la verità nei prossimi mesi). Le seconde versioni di Krait (con 4 core) e OMAP5 si scontreranno probabilmente con Wayne, di cui ancora non sono noti i dettagli.

Dal 2012 dovremmo vedere poi GPGPU anche sui prodotti mobile: NVidia integrerà CUDA in Tegra da qualche parte nel 2012-13 (a partire da Wayne o Logan) e TI ha annunciato che OMAP5 supporterà OpenCL. L’accelerazione hardware di molte funzioni permetterà di ottenere prestazioni ancora superiori con consumi più bassi ed è la prossima frontiera da raggiungere.

Sinergie

Il piano di battaglia di NVidia si è quindi ben delineato negli ultimi 2 mesi. Sfruttando l’esperienza decennale nella progettazione di GPU e l’esperienza fatta con ARM dai team Tegra e Denver (il cui sito principale è a Beaverton, Oregon: il fatto che sia di fianco al principale sito Intel in Nordamerica è naturalmente un caso :) la compagnia è in grado di generare sinergie across the board.

NVidia continuerà a spingere sul GPGPU “made in CUDA” aggiungendo nuove Computing Capabilities ad ogni nuova architettura; lo scopo è quello di fornire un’architettura più flessibile, potente, efficiente, facile da programmare e impiegabile in un maggior numero di ambiti, oltre a stare avanti alle soluzioni concorrenti (OpenCL); il fatto che il Los Alamos National Laboratory collocherà il proprio High Performance Computing (HPC) Symposium nel GTC è un chiaro indice dell’interesse che il GPGPU sta riscuotendo in ambito professionale/supercomputer (molto maggiore di quello in campo consumer, per ora molto limitato).

Questa tecnologia verrà integrata, nel prossimo paio d’anni, con i core ARM del progetto Denver per produrre processori ibridi per applicazioni HPC: in questo modo NVidia cercherà di eliminare i processori Intel dalle proprie soluzioni Tesla e offrire una soluzione completamente fatta in casa (con margini molto più elevati). Queste soluzioni dovrebbero poi migrare nel settore desktop, ma come e quando è attualmente ignoto. NVidia e ARM non sono in grado di costruire processori con prestazioni paragonabili a quelli di Intel, ma ci sono alcune applicazioni estremamente parallelizzabili dove questo non conta: quello sarà il primo obiettivo.

ARM e CUDA saranno il binomio che NVidia sfodererà anche nel campo mobile, man mano che Android sarà in grado di supportare più core e GPGPU.

Sono queste le due tecnologie su cui NVidia punta per attaccare l’intero mercato, dai supercomputer agli smartphone. Più sinergie vuol dire più penetrazione del mercato, maggiore efficienza del design (grazie al riuso delle stesse tecnologie in più prodotti) e, alla fine, profitti più elevati.

Conclusioni

Sono tempi eccitanti!

Nel giro di due anni l’intero quadro è cambiato come non succedeva da molto tempo. Intel non domina il mercato in più rapida espansione (anzi, è in ritardo); iOS e Android stanno ridisegnando il modo di usare i computer; Microsoft supporterà ARM. Per la prima volta dopo molti anni si aprono orizzonti nuovi e la partita comincia a farsi interessante di nuovo.

Non tutti i protagonisti di oggi sopravviveranno a questa rivoluzione: i prossimi (pochi) anni determineranno i nuovi equilibri nel campo della computazione.

29 Commenti »

I commenti inseriti dai lettori di AppuntiDigitali non sono oggetto di moderazione preventiva, ma solo di eventuale filtro antispam. Qualora si ravvisi un contenuto non consono (offensivo o diffamatorio) si prega di contattare l'amministrazione di Appunti Digitali all'indirizzo info@appuntidigitali.it, specificando quale sia il commento in oggetto.

  • # 1
    homero
     scrive: 

    “ogni due anni si raddoppia il numero di transistor per chip” equivale a dire che “ogni due anni la stessa funzione può essere implementata in metà dell’area”

    questa me la dovete spiegare…..

  • # 2
    collione
     scrive: 

    beh quel che è certo è che i monopoli stanno miseramente crollando

    mi dà un pò fastidio che certe architetture non siano arrivate ancora sul mercato veramente di massa, ma è questione di tempo

    spero entro il 2012 di poter entrare in negozio e comprare una scheda madre con una cpu arm :P

  • # 3
    Giacomo
     scrive: 

    @ homero
    se due anni fa quello che riuscivi a far entrare in 1 cm2 di chip lo puoi fare oggi in 0.5 cm2, vuol dire che le prestazioni di due anni fa le hai “strizzate” in metà dello spazio..

  • # 4
    marco
     scrive: 

    @homero

    “ogni due anni si raddoppia il numero di transistor per chip”
    prova a pensarci aggiungendo: “senza variare l’area del chip stesso”

    sorry se ho detto una castroneria

  • # 5
    ixxy
     scrive: 

    aspetto impaziente Denver.Si è detto che dovrebbe essere sulle prossime gpu top gamma e se lo sarà con una progettazione molto più innovativa di fusion o di sandy bridge imho rendendo la cpu e la gpu un unica unità potrà essere molto devastante,si potrebbe fare girare interi programmi sulla gpu anche quelli meno indicati senza avere penalizzazioni prestazionali,sarebbe come avere un sistema a doppia cpu da prestazione distruttive nel multi tasking.Inoltre l’unione con pci-express 3.0 diminuirebbe i problemi di banda passante gpu-cpu dando una forte spinta al GPGPU.

  • # 6
    Nessuno
     scrive: 

    Già, speriamo che nvidia se ne esca con una architettura rivoluzionaria ibrida CPU/GPU che permetta finalmente di fare quel balzo in avanti che da qualche anno non si ha con il semplice sviluppo di CPU x86.
    Sarebbe inoltre qualcosa di distruttivo per AMD/Intel, dato che non potrebbero fare la stessa identica cosa sulle loro già rappezzate architetture e sopratutto AMD, anche se avanti con l’integrazione CPU/GPU non potrà certo pensare di creare una nuova estensione alle istruzioni x86 per le sole proprie soluzioni. O almeno, che tale estensione abbia successo.

    Il parallelo tra Fermi e PentiumIV però non è proprio adeguato.
    Fermi non è più lento della concorrenza consumando di più come lo era il P4 rispetto all’Athlon. Fermi è una architettura che fa molto di più di quello che propone la concorrenza, è 1/3 più grande ma quando si tratta di fare calcoli rispetto a renderizzare poligoni tramite DirectX è decisamente più efficiente della concorrenza.
    Il confronto impietoso tra consumi e prestazioni vale solo ed esclusivamente per i videogiochi. Per il resto, nel campo professionale che sia HPC o anche supporto ai programmi professionali Fermi è molto più veloce della concorrenza consumando meno (vedere prestazioni e consumi delle schede Quadro rispetto alle FirePro).
    A nvidia non serve cambiare la propria architettura per avere il prodotto migliore. Deve solo migliorare notevolmente il modo con cui la implementa. Basta vedere cosa è stata in grado di fare mantenendo la stessa identica architettura passando dal GF100 al GF110.

  • # 7
    streamX
     scrive: 

    Pleg dalle slide di Dally, mi si evince che riformuleranno di nuovo la grandezza degli array-alu in ordine di 4 FMA-DP, per mascherare ancora di più le latenze. Diciamo un ritorno ancora più estremo al approccio del primo G80 che usata 8 unità mad invece delle attuali 16.
    Altra cosa che ho notato è la condivisione della L1 tra 8 cluster, contro l’attuale design dual-warp with L1, per limitare gli spostamenti dei dati tra cache, quindi il consumo…

    Ed ecco la domanda,
    Secondo te questi cambiamenti li vedremo già in kepler o dovremo aspettare di più ?

    ps.spero tu ne possa parlare almeno vagamente.

  • # 8
    j
     scrive: 

    non è possibile combattere contro Intel nel suo giardino di casa (x86). AMD ci ha provato per decenni e non è mai andata oltre il 20% di market share, e le risorse che NVidia può mettere in campo sono molto più esigue

    mentre è interessante notare che, avendo licenziato brevetti relativi a tecnologie nvidia presenti e future con il recente accordo, oltre alle risorse ora intel ha la possibilità pratica di combattere nvidia sul suo stesso giardino…

    @ homero
    se due anni fa quello che riuscivi a far entrare in 1 cm2 di chip lo puoi fare oggi in 0.5 cm2, vuol dire che le prestazioni di due anni fa le hai “strizzate” in metà dello spazio..

    oppure feature che oggi come due anni fa come tra due anni vengono implementate nello stesso numero di transistor – come, per dire, i chip audio codec o , se pensiamo ai System on Chip, i singoli core sintetizzabili (ARM 9 piuttosto che cortex piuttosto che mips R1x000 o altro) a partire dai quali questi sono sviluppati

  • # 9
    asd
     scrive: 

    ma come si fa a paragonare il Pentium 4 con Fermi?

    Fermi è sempre stata più veloce della concorrenza, il Pentium 4 non lo era. Fermi è stato progettato per dominare il mercato professionale, e così è stato. Il primo chip destinato al mercato consumer non era il massimo dell’efficienza, ma di fronte alle pure prestazioni non c’è mai stato nulla da ridire. Oltretutto è bastata una revisione (in meno di 6 mesi) del chip per risolverne i difetti e lasciare nuovamente la concorrenza al palo, benché quest’ultima abbia avuto più di un intero anno e una nuova architettura da presentare.
    Il Pentium 4 consuma e scaldava come una stufa, e prendeva bastonate su tutti i fronti dagli Athlon 64. Il GF100 aveva solo un problema di efficienza (circoscritto al mercato consumer, è bene ricordarlo), e fin dal GF104 si era capito che semplicemente Nvidia non aveva avuto il tempo di affinare maggiormente un progetto vincente, come si è poi dimostrato.

    Insomma, mi sembra folle paragonare un progetto che Intel stessa si affrettò a buttare nel cesso passando ai Core, assolutamente vincenti, con un progetto come Fermi, non perfettamente affinato in prima battuta, ma assolutamente vincente.

  • # 10
    Pleg (Autore del post)
     scrive: 

    @ Homero

    Hai ragione sono stato impreciso, avrei dovuto dire “raddoppiare il numero di transistor per unita’ di area”, da cui e’ evidente che posso “tenere fisso il numero di transistor e dimezzare l’area”.

    @ ixxy

    Eh si’ il bello di integrarli e’ che ci si leva dalle scatole il problema del PCI-E: la banda aumenta, ma soprattutto al latenza crolla; e se CPU e GPU possono trasferirsi dati con una latenza che e’ 3-4 ordini di grandezza inferiore allora diventa molto piu’ usabile anche per algoritmi in cui oggi non vale la pena usarla (perche’ dominati dal tempo di trasferimento da e verso la CPU).

    @ Nessuno, asd

    Vedo che il mio paragone col P4 non e’ stato apprezzato :) Volevo fare un parallelo riguardo le tecniche di progettazione: prima la spinta alle performance fregandosene del consumo energetico, e poi la brusca correzione di rotta. Non era un paragone 1:1.

    @ streamX

    Ti riferisci alla presentazione di Dally per l gara Exascale del DARPA? Quello mi sa che e’ un futuro piu’ remoto, probabilmente da Maxwell o forse da quello dopo. Il punto chiave e’ che ad oggi muovere gli operandi da e per la memoria costa piu’ energia che non farci le operazioni sopra, quindi si sta cercando di creare nuovi modi di trasferire, organizzare e accedere ai dati, ma non e’ certo cosa facile.

    Invece quello che vedremo adesso e’ piu’ qualcosa del genere: i kernel in esecuzione sulla GPU possono a loro volta generare altri kernel, che vengono messi in esecuzione autonomamente. In questo modo si esclude la CPU dal loop e non c’e’ bisogno di andare sempre avanti e indietro sul PCI-E per il controllo del flusso del programma. Questo puo’ ridurre significativamente le latenze e quindi auemntare le prestazioni in alcuni algoritmi meno strutturati.

    @ j

    Beh si’ il cross-licensing e’ questo :) adesso NVidia puo’ fare la sua CPU e Intel puo’ fare la sua GPU.

  • # 11
    goldorak
     scrive: 

    Nvidia Nvidia, la storia sta per stritolarti nelle sue grinfie. Farai la stessa fine di SGI. Andare a competere contro Intel e x86 e’ un SUICIDIO, sopratutto se non hai una architettura x86/x86-64.
    AMD e Intel hanno il vantaggio di poter estendere il lato cpu verso la gpu. AMD gia’ lo fa piu’ o meno con Fusion, Intel e’ un po’ piu’ indietro ma la strada e’ quella. Nonostante cio’, ne’ AMD ne’ Intel si sognano di buttare alle ortiche x86 per via dell’enorme parco software compatibile. E questo fattore che determina in un ciclo vizioso l’esistenza di queste cpu.
    Nvidia cosa pensa di fare ? Si ok, avranno una bella architettura gpu centrica, ma poi ? Ci faranno girare Windows sopra (e Microsoft fara’ il porting perche’ ha buon cuore ?) E tutto il software esistente ? Chi fara’ il porting ? Dov’e’ l’incentivo economico ? O useranno ARM ? Per quanto ARM sia delizioso su dispositivi mobili, sul desktop e’ ridicolo. E a meno che uno non si possa portare un computer grande come un unghia con visualizzazione olografica e interfaccia alla johnny memonic, non freghera’ a nessuno di usare ARM sul desktop perche’ ha consumi relativamente contenuti. Male che vada, Intel potrebbe benissimo portare sul desktop le sue cpu ulv che sono estramente competitive con ARM. Certo non potrebbe venderle a prezzo d’oro, ma se la concorrenza si fa pericolosa perche’ no ?

  • # 12
    Marco
     scrive: 

    “Andare a competere contro Intel e x86 e’ un SUICIDIO”

    A me pare il contrario, è Intel che deve andare competere contro ARM (e di conseguenza Nvidia): in molti dicono che il PC (e soprattutto il desktop) sia (quasi) morto.
    Lo dici tu stesso “quanto ARM sia delizioso su dispositivi mobili”: fra non molto questi dispositivi avranno una potenza sufficiente a non rendere più indispensabile un computer fisso a casa, a discapito di soluzioni magari tipo il Motorola Atrix.
    Già Windows 8 girerà su ARM (senza contare tutti gli OS che già ci girano e che potrebbero coprire le esigenze di un’ampia fetta di utenti), anche se l’ISA potrebbe finalmente diventare irrilevante grazie al cloud computing spinto (Chrome OS) o altrettanto spinti “layer di astrazione” (Dalvik, Java, .NET, Canvas e Flash).

  • # 13
    Pleg (Autore del post)
     scrive: 

    @ goldorak

    La tua analisi non sta in piedi.

    1. NVidia non ha un “x86 da buttare alle ortiche”, la scelta e’ tra entrare nel mercato processori con ARM o non entrarci; non entrarci sarebbe un errore, visto il successo che ARM sta avendo adesso

    2. Microsoft non fara’ “il porting perche’ ha buon cuore”: Microsoft ha gia’ detto che fara’ il porting, Windows8 girera’ su ARM e ha gia’ mostrato Office e Media Player su ARM. Lo fa per il suo proprio tornaconto economico, per entrare in un mercato dove non c’e’ e dove sta succedendo di tutto

    3. Non credo che a Google farebbe schifo conquistare anche il mercato desktop. Se NVidia (o un altro) producesse delle CPU ARM con abbastanza potenza da poter essere messe su un desktop, penso che a Google interesserebbe portare Android anche li’ e attaccare direttamente il mercato di Windows. Tra il fatto che Android gia’ gira su ARM e con la maggior parte delle applicazioni di Google nel cloud, non c’e’ piu’ alcun problema di compatibilita’

    4. Per il mercato HPC, invece, gia’ adesso usano linux/unix e software dedicato, e gia’ adesso un bel po’ di gente usa CUDA. Ed e’ un mercato che vale 10 miliardi di $ l’anno, se NVidia riuscisse a prednersene anche solo il 10% auemnterebbe di parecchio il proprio fatturato (> 25%)

  • # 14
    CountDown_0
     scrive: 

    Pleg, splendido articolo come al solito.
    Fino a un po’ di tempo fa mi chiedevo come avrebbe fatto nVidia a sopravvivere, essendo l’unica tagliata fuori dal mondo x86 e visto che su pc ci si sposta sempre più verso la GPU integrata nel processore.

    Oggi mi chiedo come farà AMD a sopravvivere…

  • # 15
    Nessuno
     scrive: 

    @goldorak

    No capisco la tua analisi. Cioè se non hai x86 non hai possibilità di sopravvivere? Io vedo proprio il contrario. Cioè, anche se si avesse la possibilità di fare CPU x86 nessuno riuscirebbe a stare al passo di Intel. Forse non ti è chiaro quale sia la dimensione di Intel rispetto alla concorrenza, reale o possibile. Per quanto super mega meravigliosa possa essere la tua CPU x86 compatibile non riusciresti a venderne a sufficienza.
    Solo cercando di scardinare il monopolio x86 che da anni affossa la capacità di progresso informatico si può sperare di creare un nuovo mercato in cui prosperare (e non solo sopravvivere).
    E non c’è mai stato nella storia, da quando x86 è diventata la scelta per il PC compatibile, una occasione come quella attuale di scardinare tale monopolio. Persino Microsoft se nè accorta.

    Ci faranno girare Windows sopra (e Microsoft fara’ il porting perche’ ha buon cuore ?)

    Dovrebbe sorgerti il dubbio, che proprio perché Microsoft non fa il porting per buon cuore ma come investimento per il futuro, che la questione ARM vs x86 è cosa seria. Se persino MS ha deciso di portare il proprio sistema operativo verso ARM dopo più di 12 anni di solo sviluppo per x86 (da Win2000 in poi) vuol sicuramente dire che le prospettive future per questa architettura sono notevoli, e con il porting (se fatto decentemente) potrebbero persino essere migliori.

    Tieni in conto che programmare oggi un algoritmo perché venga eseguito su una scheda video richiede SW di sviluppo proprietario, un paradigma di programmazione nuovo, e non è cosa possibile per qualsiasi tipo di algoritmo che si possa pensare (diversamente dallo sviluppo di SW di tipo seriale per architetture “ordinarie”). Il fatto che oggi ci sia x86 come CPU di appoggio e domani qualsiasi cosa d’altro non modifica nulla di questo approccio. E nvidia oggi punta di più allo sviluppo di sistemi professionali dove Windows non è il SO di riferimento e potrebbe senza alcun problema rivoltare il mercato dei super computer a discapito di Intel/AMD e IBM stessa che con le loro architetture attuali non possono competere con le potenze di calcolo di una GPU e domani con l’integrazione più stretta di una CPU indipendente probabilmente lo saranno ancora meno.

  • # 16
    goldorak
     scrive: 

    @ Nessuno : Ho detto che chiunque abbia tentato di fare concorrenza sul desktop senza avere un x86 e’ morto. Basta guardare la storia degli ultimi 2 decenni. La stessa Intel cerco’ per due volte di uccidere x86 e non ci riusci’. Quindi puoi avere il piu’ fantastico processore di tutti i tempi, ma se non esegue codice x86 o lo esegue con prestazioni cosi’ basse da essere inutile e’ destinato al fallimento.

    Nvidia poteva competere sul desktop comprando Via, ma non e’ la strada che ha scelto. Il desktop non e’ morto, e non lo sara’ fintantoche’ i dispositivi portatili (tablet, etc…) non daranno la possibilita’ di essere cosi’ produttivi cosi’ come lo si e’ con un computer (desktop o portatile che sia). E no non si riduce tutto a Windows e Office. Ci sono pletore di software professionali che si possono usare su desktop e portatili e che allo stato attuale sono assolutamente impossibili da usare su tablet (UI a parte), netbooks, MIB e quant’altro.

    Inoltre vediamo di chiarire una cosa, Microsoft e’ legata a filo doppio a Office. Finche’ non vedro’ Office (la versione COMPLETA) non una versione monca (come quella nel cloud, o quella su mac os) girare su ARM, restero’ della mia idea.

    Microsoft ai tempi di NT supportava altre architettura, ma sappiamo tutti cosa intendevano per questo. Windows vive per Office, e Office giustifica Windows. E Office e’ x86. Questo e’ quanto, e non sara’ una versione monca che gira su qualche strana architettura a cambiare questo dato di fatto.

    La strada che Nvidia ha scelto e’ quella di abbandonare del tutto il desktop. Tuttavia checche’ ne dicano i fanboys, il core business dell’azienda verde rimane ancora il mercato di massa. Si stanno cercando di farsi strada nel settore professionale gp-gpu. Attenzione al termine, stanno tentando. E hanno tantissima strada da fare per poter abbandonare il mercato consumer. Inoltre i loro vari progetti Tegra, Tegra 2 sono cosi’ cosi’ e non si possono sostuire al loro core business.

    Pensare che il gp-gpu sara’ la prossima tappa del computing e’ essere molto ingenui. La strategia vincente ce l’hanno AMD e Intel, che e’ quella di integrare aspetti della gpu nella cpu e ottenere ambienti di calcolo eterogenei. Nvidia per fare la stessa cosa deve in qualche modo rivoluzionare ARM e a quel punto non sara’ piu’ ARM chip a basso costo dal cosumo energetico ridicolo. E una strategia perdente gia’ in partenza.

  • # 17
    Nessuno
     scrive: 

    Ho detto che chiunque abbia tentato di fare concorrenza sul desktop senza avere un x86 e’ morto

    L’unica è stata la Apple, ma il suo problema era che non girava Windows, non il fatto che non fosse x86 compatibile.

    E no non si riduce tutto a Windows e Office.

    Windows vive per Office, e Office giustifica Windows. E Office e’ x86

    Scusa ma ti stai contraddicendo di brutto.

    Concordo sul fatto che la fortuna di Windows in larga parte è dovuta all’esistenza di Office. Ma non hai considerato che l'”altra” versione di Office, quella per Mac, non gira sotto Windows, e quindi MS non ha interesse a crearsi un problema internamente con gente che prende Mac (senza Windows quindi) per usare Office. Con un Windows portato su altre architetture questo problema non esiste più e quindi MS avrebbe tutti i vantaggi di fare in modo che una versione sia uguale all’altra (a meno di impedimenti di interfaccia se pensano ad esempio ad un office da usare solo su tablet).

    La strategia vincente ce l’hanno AMD e Intel, che e’ quella di integrare aspetti della gpu nella cpu e ottenere ambienti di calcolo eterogenei. Nvidia per fare la stessa cosa deve in qualche modo rivoluzionare ARM e a quel punto non sara’ piu’ ARM chip a basso costo dal cosumo energetico ridicolo. E una strategia perdente gia’ in partenza.

    Ci sono 2 punti che non vanno bene in queste affermazioni.
    1. Ovviamente nessuno si aspetta che un processore studiato per fare calcoli scientifici, e quindi dotato di innumerevoli unità di calcolo, consumi quando fa un Soc Tegra. Per ogni uso c’è un parametro watt/prestazioni di riferimento. Non avrebbe nemmeno senso mettere un sistema da millemila TFlops e 10W in un telefonino se per quello.
    2. Secondo te per chi è più facile “estendere” le funzionalità di computazione: nvidia con ARM o Intel/AMD con x86 che è già un mostro di Frankentein da 30 anni a questa parte, cioè da quando sono passati dagli 8 ai 16 bit?
    Vorrei farti notare le “fortune” che hanno avuto le varie estensioni 3DNow! SSE, SSE2, 3, 4, 5 etc…
    La compatibilità che fino a ieri è stata una manna per Intel per mantenere il monopolio oggi è controproducente perché non permette uno sviluppo efficiente dell’architettura secondo le nuove richieste (e possibilità) del mercato.

    Inoltre dimentichi che sono le applicazioni professionali a fare uso proprio di queste nuove capacità di calcolo. E nvidia ha una struttura già collaudata per supportare gli sviluppatori di queste applicazioni. Fornisse loro l’HW necessario non potrebbe che diventare lo standard per lo sviluppo, perché data la potenza, agli sviluppatori poco interessa della compatibilità con il resto del mondo x86.

  • # 18
    streamX
     scrive: 

    @goldorak

    I super-computer vengono creati sulle base della potenza computazionale ed infatti vediamo molte architetture POWER in classifica da anni.

    L’avere una CPU ARM-64bit al interno di un SOC GPU centrico non vuole essere una sfiga ad intel nel settore delle Cpu, ma un modo per eliminare le inefficienze del pietoso pci-e.

    L’atto del contendere non è la cpu ARM64-custom che non verrà venduta singolarmente,ma il GPGPU vs Larrabee.

  • # 19
    Pleg (Autore del post)
     scrive: 

    La strada che Nvidia ha scelto e’ quella di abbandonare del tutto il desktop.

    Questa dove l’hai letta? Come ho scrito nell’articolo, le GPU sono ancora il core business. NVidia non abbandonera’ mai le GPU consumer discrete fino a che non verranno rese obsolete dalla tecnologia (se avverra’).

    Pensare che il gp-gpu sara’ la prossima tappa del computing e’ essere molto ingenui. La strategia vincente ce l’hanno AMD e Intel, che e’ quella di integrare aspetti della gpu nella cpu e ottenere ambienti di calcolo eterogenei. Nvidia per fare la stessa cosa deve in qualche modo rivoluzionare ARM e a quel punto non sara’ piu’ ARM chip a basso costo dal cosumo energetico ridicolo. E una strategia perdente gia’ in partenza.

    Questo non ha senso in molti modi diversi:

    1. “integrare aspetti della gpu nella cpu” E’ il GPU computing: la GPU non e’ stand-alone ed e’ in pratica un enorme coprocessore per calcoli paralleli, soprattutto floating-point; questo approccio architetturale restera’ anche quando la GPU verra’ portata on-die: la CPU esegue la parte di codice seriale, e la parte piu’ number-crunching parallela viene spedita alla GPU

    2. Intel non sta “integrando aspetti della gpu nella cpu”: Intel sta integrando una piccola GPU con fixed-functions all’interno del die per mangiare spazio a NVidia/ATI nella fascia bassa; le GPU di Intel non sono programmabili ne’ sono usabili per GPGPU — non avrebbe senso, Intel NON vuole foraggiare il GPGPU, vuole solo togliere mercato alle GPU per proporre la sua versione del calcolo parallelo (Larrabee e derivati); ed e’ per questo che nei suoi core sta aggiungendo AVX e unita’ SIMD sempre piu’ avanzate

    3. “ottenere ambienti di calcolo eterogenei” e’ quello che AMD e NVidia stanno facendo. L’approccio di Intel allo HPC e’ invece quello Larrabee: un multicore-multithread-vettoriale che non ha niente a che fare direttamente con la grafica (infatti la scheda grafica basata su Larrabee non e’ mai uscita, non era potente abbastanza) e che non e’ molto descrivibile come “eterogeneo”: Larrabee usa x86+LNI strettamente integrate

    4. che cosa significa “Nvidia per fare la stessa cosa deve in qualche modo rivoluzionare ARM” ? Quello che NVidia fara’ e’ mettere dei core ARM e una sua GPU sullo stesso die, collegandole probabilmente da qualche parte tra l’ultimo livello di cache e il memory controller — esattamente quello che AMD fa con Fusion, ed esattamente il contrario di quello che Intel fa con Larrabee. La “rivolzuzione” di ARM sara’ costruire processori ad alte prestazioni, ma questo e’ qualcosa che ARM vuole e che e’ completamente ortogonale allo sviluppo delle GPU

  • # 20
    Giovanni
     scrive: 

    Introduco ammettendo da subito che nVidia non rientra in primis tra le mie simpatie. Lo dico anche in veste di chi opera da decenni nel settore della computer grafica e che crede di aver rilevato molti atteggiamenti di dedizione fideistica al branding che, in questi ambiti, sono decisamente dannosi ed equivalenti al famoso “prosciutto negli occhi”!

    Nonostante le apprezzabilissime intenzioni strategiche di nVidia, sento di dover condividere pienamente i dubbi sollevati da @goldrak. Il lavoro di R&D è sicuramente encomiabile, almeno molto di più di quello di marketing che ha visto molto impegnata nVidia finora e come ho ripetuto recentemente in altri post. Però non è sufficiente anche se si ottengono risultati di alto livello. La strategia addottata mi sembra troppo dispersiva soprattutto per un’azienda sostanzialmente piccola come nVidia. Sicuramente un po’ di ambizione non fa male e, puntando in alto, si può riuscire ad ottenere qualcosa di buono; ma non avere un obiettivo preciso potrebbe tradire anche un tentativo disperato, che come sempre in questi ambienti governati dagli “stock exchange” devono essere ben mascherati fino all’ultimo.

    Intendo dire che le proposte nVidia postrebbero essere anche qualitativamente eccellenti (per ora, ma chissà per quanto, se Intel e AMD stanno percorrendo strade analoghe), ma mi sembra eccessivo voler coinvolgere contemporaneamente il mercato professionale HPC ed il più “becero” consumer di tablet e smartphone (tra l’altro in un momento pericoloso perché in assoluto fermento perciò passibile di repentini cambi di direzione)… e solo perché continua a perdere terreno nel settore desktop. Il tentativo è condivisibile e meritevole, ma necessita dei migliori auguri perché già in molti, nel passato, si sono bruciati le ali con operazioni analoghe.

    Si consideri che, nonostante quelle che sono anche i miei sogni più fantasiosi, siamo anche in un periodo piuttosto negativo in cui quelli che possono venire a mancare sono proprio i numeri: per esempio, in ambito professionale, un cambiamento architetturale comporterebbe anche un rinnovamento del parco installato (hard e soft) che attualmente sembra un miraggio per imprenditori trasognati.

    Saluti

  • # 21
    goldorak
     scrive: 

    @ Pleg :

    * Nvidia sta abbandonando il desktop. Basta guardare in che senso sta sviluppando le nuove architetture. Hanno dovuto correre ai ripari con Fermi (non tanto per il consumo) ma perche’ l’architettura era troppo sbilanciata verso il gp-gpu, trascurando aspetti fondamentali per uso desktop, sopratutto per i videogames.
    Oh certo, lo fara’ lentamente, cercando di non dare nell’occhio ma basta vedere i tipi di prodotti che sta tirando fuori e che tirera’ in futuro per capire che la sua presenza sul desktop ha un limite, e non come dici tu per cambiamenti tecnologici ma per precisi scelte aziendali, ovverosia concentrandosi sul gp-gpu.

    * Sbagliato, il gpu computing non e’ altro che una forma di calcolo parallelo estremizzato. Anche il Cell rientra in questa categoria, e i processori della ps 2. Non e’ niente di nuovo sotto il sole. E per questo che fanno faville solo con determinati tipi di algoritmi e di codici. Provare ad far girare un os general purpose (tipo windows o linux opportunamente “portato” sulla architettura Tesla) su una sceda Tesla e guarda le prestazioni andare a zero. L’architettura di Fermi e’ un enorme co-processore vettoriale. Ma senza cpu general purpose a che serve ? Ecco perche’ dico che le scelte di AMD e Intel sono piu’ lungimiranti, e se vogliamo scomodare Larrabee (pace all’anima sua) era un progetto molto piu’ rivoluzionario di quello di Nvidia.

    * Larrabee era un progetto molto piu’ ambizioso di quello che fanno AMD e Nvidia. Profondamente diverso dalle gpu classiche.
    Un sistema di calcolo general purpose massiciamente vettoriale.
    Nvidia un sistema del genere non ce l’ha manco in progetto.

    * Nvidia se vuole comptere con Intel deve avere un sistema che e’ in grado di garantire prestazioni di alto livello non solo per codice parallelo ma anche general purpose. Sul versante gpu hanno Tesla, ma su quale cpu faranno affidamento ? Su ARM ? Hai visto le prestazioni di ARM ? Vanno bene su telefonini, ma usarli in server farm ? Non fatemi ridere. Avere una cpu che possa stare sullo stesso piano prestazionali degli Xeon e Opteron a piu’ vie richiedera’ qualcosa dippiu’ che ARM.

  • # 22
    Cesare Di Mauro
     scrive: 

    A mio avviso l’assalto a desktop e server passa necessariamente per due fattori: unità SIMD potenziate e i 64 bit.

    Attualmente ARM non può contare su nessuna delle due, ma si sta attrezzando per il futuro, quanto meno per i 64 bit, anche se sono molto curioso di vedere in che modo dovrà cambiare le sue due ISA (oltre alla “nativa” / originale ARM, ormai c’è Thumb-2 che ha preso parecchio piede, grazie alla compattezza del codice).

    Il mio sogno nel cassetto è avere diversi core di processori “tradizionali” che hanno la possibilità di spedire job ad altri core “massivamente paralleli” / SIMD, in un network fortemente connesso, sfruttando arbiter e code per gestire i carichi di lavoro, in maniera del tutto autonoma e indipendente.

    In pratica nel momento in cui una CPU ha bisogno che venga eseguito un job, tramite un’apposita (nuova) istruzione della sua ISA fornisce al più vicino arbiter tutte le informazioni necessarie per il job da elaborare. Dopodiché prosegue nel suo lavoro.

    L’arbiter controlla direttamente un certo numero di core SIMD, e nel caso in cui siano tutti impegnati sistema il job in un’apposita coda, in attesa che se ne liberi qualcuno per elaborare la richiesta.

    Si potrebbe anche pensare di chiedere agli arbiter vicini se possono prendersi carico del job, nel caso dispongano di unità SIMD scariche.

    Alla fine del job il core SIMD che si è occupato della sua elaborazione segnala all’arbiter il completamento, e quest’ultimo può opzionalmente interrompere l’esecuzione del core tradizionale, generando un’opportuna eccezione.

    Per quanto riguarda la memoria, quella principale è condivisa da tutte le tipologie di core, ma i core SIMD potrebbero anche disporre di apposita memoria dotata di banda molto elevata (anche se a latenza più elevata).

    Al momento penso che tutti e tre i player, Intel, AMD, e nVidia, abbiano le capacità per implementare uno scenario del genere, con le prime due più avvantaggia sul versante core “tradizionale”.

  • # 23
    Cesare Di Mauro
     scrive: 

    Non nascondo che sono rimasto profondamente affascinato da Larrabee, sebbene concordi con Pleg: usata come GPU le prestazioni non erano certo brillanti.

  • # 24
    goldorak
     scrive: 

    @ Cesare di Mauro : beh se i giochi sfruttassero i voxel o altri paradigmi paralleli invece che quello dei vertici/triangoli vedresti Larrabbee fare faville, mentre sarebbero le gpu ATI ed Nvidia avere prestazioni scarsine.
    E che del dire del ray tracing ? Un gioco in cui si sfrutta il ray tracing in tempo reale avrebbe una grafica talmente realistica da fare sembrare scene renderizzate con gpu ATI e Nvidia roba palesemente “falsa”.

  • # 25
    Nessuno
     scrive: 

    L’architettura di Fermi e’ un enorme co-processore vettoriale. Ma senza cpu general purpose a che serve ? Ecco perche’ dico che le scelte di AMD e Intel sono piu’ lungimiranti

    E l’ARM nella GPU secondo te ce lo aggiungono per cosa?

    Hai visto le prestazioni di ARM ? Vanno bene su telefonini, ma usarli in server farm ? Non fatemi ridere.

    Hai visto le dimensioni del core di un ARM e i suoi consumi? Fino ad ora non c’è stata intenzione di sviluppare l’architettura nel seno delle perfomance pure perché non c’era speranza che ne valesse la pena contro x86.
    Oggi invece c’è un barlume e ci sono aziende, non solo nvidia, ma anche Texas Intruments, vedi OMAP5, che credono nella possibilità di salire in prestazioni per occupare il nascente mercato dei MID, mercato dove proprio la complessità e i consumi di x86 non può arivare.
    nvidia non ha nei piani di uscire domani con un sistema ibrido in grado di competere sul mercato desktop. Ma ha presentato un piano pluriennale in cui si comprende perfettamente che la strategia non è senza “un obiettivo preciso” come detti da Giovanni. Magari è un obiettivo sbagliato. Ma su quello non lo si può sapere oggi, ma si faranno le valutazioni a posteriori.
    Anche l’HPC è una scommessa, ma nvidia ha avuto la capacità di crederci e presentare dei prodotti che ne hanno stimolato il mercato. Poi se domani uscirà un 100 core Intel che ha le stesse prestazioni delle schede nvidia, starà ad nvidia trovare la soluzione per battere la concorrenza. Ma se non si ha la capacità di diversificarsi si fa la fine di AMD dove si autocannibalizza il proprio mercato con le APU a discapito delle proprie schede discrete. Facendo così si pone allo stesso livello di Intel con le sue GPU integrate, ma Intel non vende anche schede discrete da cannibalizzare: ovvero ogni GPU integrata venduta da Intel è guadagno in più, ogni APU AMD venduta è una scheda desktop in meno.

    tra l’altro in un momento pericoloso perché in assoluto fermento perciò passibile di repentini cambi di direzione

    I cambi di direzione non avvengono da soli, ma perché vi è qualcuno in grado farli accadere. E più grande sei più facile è far cambiare direzione alle cose e più facile resistere ai cambiamenti. nvidia per ora è nella condizione ideale di poter assestare le modifiche che vuole al mercato per è la vera forza trainante con capacità ingegneristiche e know-how ben superiore ai suoi competitor.

  • # 26
    Pleg (Autore del post)
     scrive: 

    @ Nessuno

    Esatto, grazie per aver risposto al posto mio :)
    E’ proprio cosi’, la strategia di NVidia e’ chiarissima: abbracciare ARM in tutti i segmenti di mercato (core standard a basso consumo per smartphone/tablet, core nuovi di zecca ad alte prestazioni per applicazioni HPC e desktop) e spingere contemporaneamente le proprie soluzioni GPU come processori vettoriale general purpose, creando sistemi ibridi dove il core ARM si occupa di gestire il sistema operativo e i carici “normali” e la GPU come coprocessore vettoriale.

    @ Cesare

    Come dici, ARM64 sta arrivando… i dettagli non sono ancora noti pero’ :)

    Per il resto, Kepler dovrebbe fornire qualcosa di simile a quello che chiedi. Non conosco bene i dettagli, ma da quel che ho visto la nuova architettura Kepler ha CUDA core stateless e una queue di kernel; un processo della CPU puo’ generare kernel multipli (senza aspettare che i precedenti finiscano) e inviarli alla GPU, che li mette in coda; lo scheduler della GPU alloca i vari kernel sui CUDA core disponibili, cercando di massimizzare l’occupazione; quando un kernel termina la GPU invia lo stato indietro alla CPU, che puo’ recuperare il risultato della computazione, e lo scheduler mappa un nuovo kernel sui CUDA core liberi (oppure li da’ in pasto ad un kernel che sta gia’ girando ma che ha bisogno di risorse addizionali), fino al completamento di tutti i kernel.

    Inoltre, la GPU puo’ creare autonomamente nuovi kernel e metterli nella stessa coda senza passare dalla CPU, cosa che riduce parecchio il traffico sul PCI-E (e la sua mostruosa latenza!). Credo che si possano anche avere kernel ricorsivi (esattamente come avere funzioni ricorsive), ma non sono sicuro.

    Una volta che si integrera’ la GPU e la CPU on-die, il traffico tra i due avra’ una latenza enormemente piu’ bassa (a naso direi almeno 3 ordini di grandezza) e sara’ possibile mandare verso la GPU anche kernel molto piu’ piccoli o avere comunque piu’ interazioni fra CPu e GPU, con ulteriori benefici.

  • # 27
    Giovanni
     scrive: 

    Certo, poi ho erroneamente parlato di strategia poco chiara, ma ho introdotto la questione dicendo:

    “La strategia addottata mi sembra troppo dispersiva soprattutto per un’azienda sostanzialmente piccola come nVidia”

    Correggo il poco chiaro, perché mi sembra logico che a certi livelli industriali una eventuale mancanza di chiarezza sarebbe quantomeno suicida… volevo sottolineare il rischio della “dispersione” e conseguente possibile poca incisività.

    Infine quando mi riferivo ai “repentini cambi di direzione” intendevo una caratteristica oggettiva dei mercati in prima espansione… se me la estrapoli dal contesto la frase può essere sottoposta a qualsiasi interpretazione.

    In questo caso ol pericolo è che una tecnologia ottima e che sembra essere molto promettente per il futuro venga rapidamente stroncata anche per scelte peggiori… è successo in moltissime occasioni al momento dell’avvio di nuovi mercati… e magari i frutti li riescono a cogliere altri che si sono impegnati meno ma hanno atteso.

    Se poi vogliamo fare l’apologia di nVidia ancor prima che inizi a vendere… auguri a nVidia!

    Ciao

  • # 28
    Nessuno
     scrive: 

    Se poi vogliamo fare l’apologia di nVidia ancor prima che inizi a vendere… auguri a nVidia!

    No, no, che apologia.
    Qui si parla di una azienda che sta compiendo il percorso inverso rispetto ai suoi concorrenti e quindi ha un approccio diverso al problema.
    Bisogna anche tenere conto di 2 cose:
    1. AMD produce microprocessori e GPU. Scaricare il lavoro di uno sull’altro significa che una delle due divisioni perde “potere”. Ovvero, se domani i calcoli complessi verranno effettuati dalla parte GPU interna al die, non ha senso per la parte di sviluppo CPU continuare a migliorare oltremodo l’architettura per aumentare l’IPC. O si raddoppiano i costi di ricerca oppure si opta per migliorare un aspetto rispetto ad un altro.
    2. Intel non fa GPU degne di essere considerate come tali, per cui il suo approccio è quello di estendere l’architettura x86 classica con una nuova ISA che faccia uso di nuovi blocchi funzionali o istruzioni come ha fatto da 30 anni a questa parte invece di un approccio si sintesi tra due mondi separati.
    In questo quadro nvidia si pone più similmente ad AMD a voler combinare il mondo CPU+GPU però in maniera diversa. Loro non fanno CPU per cui non hanno alcun interesse di tipo strategico nel lungo periodo di difendere un mercato piuttosto che un altro.
    Tuttavia il vantaggio di nvidia come detto è il fatto di partire con un architettura ARM semplice e “pulita” da cui può ottenere quai tutto quello che vuole (incluso l’estensione della ISA per supportare le unità funzionali delle sue GPU).

    Diciamo solo che l’approccio nvidia al problema è più interessante perché più libero da vincoli di compatibilità pregressi o limitazioni di complessità estreme che esistono per AMD e Intel. Quindi ha la possibilità di creare qualcosa di veramente diverso, forse anche rivoluzionario. I suoi concorrenti ovviamente non possono che puntare verso un approccio evolutivo.
    Ne ha le capacità tecniche e la forza per supportare lo sviluppo e l’adozione delle proprie soluzioni. Quest’ultima ad esempio è una cosa che manca ad AMD, qualsiasi sia la soluzione che adotta.
    Perché non basta solo mettere un numero spropositato di unità di calcolo su un pezzo di silicio per dire di avere la soluzione più potente, bisogna anche fare in modo che questi vengano utilizzati al meglio, e l’approccio alla computazione altamente parallela richiede un approccio (e quindi uno studio) diverso da quello classico “seriale”. Richiede cioè il supporto di strumenti nuovi e capacità di assistere i programmatori a trovare prima di tutto l’implementazione adeguata alla architettura che viene loro offerta.

  • # 29
    Pleg (Autore del post)
     scrive: 

    Giusto che se ne parlava: CUDA 4.0 e’ stato rilasciato oggi
    http://developer.nvidia.com/object/cuda_4_0_RC_downloads.html

    La recensione di Anand:
    http://www.anandtech.com/show/4198/nvidia-announces-cuda-40

    Ovviamente il grosso balzo in avanti e le nuove Compute Capabilities succose arriveranno con Kepler, perche’ serve il nuovo supporto hardware.

Scrivi un commento!

Aggiungi il commento, oppure trackback dal tuo sito.

I commenti inseriti dai lettori di AppuntiDigitali non sono oggetto di moderazione preventiva, ma solo di eventuale filtro antispam. Qualora si ravvisi un contenuto non consono (offensivo o diffamatorio) si prega di contattare l'amministrazione di Appunti Digitali all'indirizzo info@appuntidigitali.it, specificando quale sia il commento in oggetto.