Questo articoletto vorrebbe essere un resoconto più o meno preciso sulle novità che la beneamata AMD ha implementato nei nuovi processori AM2.Sono andato un po’ di collage da vari articoli letti su riviste od internet mescolati con diverse informazioni tecniche “spiluccate” qua e là, mi scuso fin d’ora per eventuali punti poco approfonditi od errori. D’altra parte l’impresa è abbastanza ciclopica perché i cambiamenti sono molti e le trasformazioni cui stiamo assistendo sono per molti versi radicali. Inizio col postare quello che ho scritto oggi in seguito integrerò ed ordinerò...magari con il Vs. aiuto mi piacerebbe riuscire a fare una bella analisi esaustiva.
Risparmio Energetico
Intanto si può rilevare, viste le ultime scelte fatte da AMD ed INTEL, che sembra essere passata definitivamente di moda la folle corsa all’aumento dei Mhz, con sforzi che sono invece più concentrati al raggiungimento di una maggiore efficienza delle componenti dei processori e di un minore consumo energetico (e dei benefici a livello di calore, dissipazione e silenziosità conseguenti).
In questo settore bisogna dire che INTEL con i suoi nuovi processori in uscita parte con qualche vantaggio su AMD: la ricerca di INTEL è già da tempo rivolta a far sì che i processori non si accendano completamente in fase di avvio dell’utilizzo e poi spengano via via le sezioni non necessarie a compiere i processi richiesti, ma che facciano esattamente il contrario, ovvero che entrino in funzione con i servizi minimi alimentati e che accendano solo le sezioni richieste. Per AMD il discorso è più complesso, infatti i nuovi AM2 puntano piuttosto sull’efficienza e l’ottimizzazione delle risorse, in quanto la filosofia attuata da INTEL è di difficile applicazione su CPU (come quelle di AMD) che integrano nel core il controller di memoria. Questa caratteristica pur portando svantaggi dal punto di vista del consumo energetico porta però anche notevoli benefici di cui parleremo più avanti.
Du is mei che uan
Altra considerazione fondamentale riguarda la decisa tendenza ad incrementare la proposta di CPU multi-core: in quest’ottica le CPU Fx per 939 precedenti al FX60 rappresentano un’eccezione da considerare valida solo da chi nutre un forte interesse per i videogames, in quanto non ci sono ancora giochi in grado di sfruttare appieno il dual core smistando i calcoli necessari fra 2 CPU e di conseguenza tali applicazioni trovano notevoli benefici nei megahertz di potenza aggiuntiva di questi processori a core singolo. Tuttavia è una parentesi destinata a terminare: presto anche i giochi verranno ottimizzati per sfruttare appieno eventuali CPU aggiuntive: non a caso anche l’applicazione di benchmark grafico più nota al mondo nella sua ultima versione, il 3dmark06, premia la presenza di un processore dual-core con un’incidenza molto maggiore sul punteggio rispetto alle versioni precedenti dove la scheda grafica la faceva da padrona assoluta.
D’altra parte anche senza che il singolo programma sia ottimizzato per questo tipo di tecnologia è lampante che i benefici siano comunque evidenti in molti casi. Se sul nostro PC facessimo girare un solo programma alla volta, sarebbe certamente più conveniente avere per esempio un processore a 3000 mhz che non 2 processori a 2000. Ma in realtà al semplice caricamento di un sistema operativo è molto probabile che su un qualsiasi Pc partano almeno 5 o 6 programmi in background: antivirus, firewall, peer to peer, programma di messaggistica, etc. se poi magari lavoriamo con php od sql avremo sicuramente installati anche i server relativi. Una prova valida può essere questa: provate a decomprimere un archivio in rar o zip da 500 o 600 mb ed intanto a navigare fra le cartelle con un FX57. Poi provate a farlo con un 3800x2 e ditemi se i vantaggi di un dual core non sono evidenti anche senza che i software siano particolarmente ottimizzati a sfruttarlo.
Potete vedere di seguito una schemino semplice semplice di un processore AM2 dual core:
Il nuovo controller di memoria DDR2
Ed ora veniamo un po’ a parlare delle tecnologie che il nuovo socket porterà nei nostri fidati compagni elettronici. Per chi non lo sapesse ancora precisiamo che il nuovo socket AM2, nonostante abbia 940 contatti, non è compatibile con il “vecchia” architettura 940 sviluppata per gli opteron. Forse l’innovazione principale è il citato cambiamento del controller di memoria. La scelta “storica” di AMD di integrare tale componente nel processore, piuttosto che richiedere l’implematazione nel north bridge della motherboard, se da un lato, come detto sopra, porta naturalmente ad un maggiore consumo del chip, dall’altro diminuisce il costo delle schede madri ed ottimizza la gestione delle RAM rispetto alla potenza di calcolo effettiva del processore. Questo è uno dei motivi per cui lo standard AM2 permette fin d’ora ai suoi utenti di montare sulla stessa motherboard , anche se economica, una gamma di processori variabile da un Sempron 2800 fino ad un 5000 ed ancora più su con la serie Fx. Di nuovo c’è il fatto che questi controller integrati nei chip AM2 sono in grado di gestire le ram in standard DDR2 a frequenze diverse a seconda del tipo di core del processore. Vediamo di seguito le differenze:
- AM2 Dual Core nome in codice Windsor dotato di 1 o 2 Mb di Cache L2: supporta DDR2 fino a 800 (1600) Mhz , standard 6400 di default
- AM2 Single Core, nome in codice Orleans (Athlon 64 bit), dotato di 512 Kb di Cache L2: supporta DDR2 fino a 667 (1334)Mhz
- AM2 Single Core, nome in codice Manila (Sempron) dotato di 256 o 128 Kb cache L2: supporta DDR2 fino a 667 (1334)Mhz
La scelta di integrare un nuovo controller per DDR2 non è determinata da grandi balzi prestazionali, almeno per il momento, ma bensì dal fatto che l’allinearsi dei prezzi di questo tipo di RAM con le vecchie DDR permette agli stessi costi di implementare una tecnologia dalle potenzialità notevolmente superiori. Teoricamente la larghezza di banda massima (a default) sarebbe di circa 13000 Mb al secondo (con un 939 si arriva poco sopra i 6000) ma dai test che potete trovare anche in rete, pare che il picco massimo di utilizzo di questa banda teorica si attesti attorno al 85% che da una banda effettiva di poco più di 10000 mb al secondo. Bisogna anche rilevare che, mentre sul socket 939 non c’erano evidenti differenza nel bandwidth delle RAM fra, per esempio, un 3000+ ed un Fx57, che si attestavano entrambi su valori vicinissimi (non più di 50 mb/s di differenza), al contrario sul socket AM2 sono state misurate, su questo valore, differenze di oltre 2000 Mb/s fra un 3200+ ed un Fx62.
Ed ora tentiamo di comprendere un altro punto piuttosto critico, usando la maggiore semplicità possibile senza parlare di complicati discorsi di timing (ci provo ma non garantisco): il fatto che questo benedetto controller faccia parte integrante del processore fa si che la frequenza di funzionamento del chip vada a ripercuotesi direttamente sulla frequenza del controller e quindi delle RAM. In particolare la frequenza delle DDR è data dalla frequenza effettiva di funzionamento della CPU divisa dal processore stesso per un numero X, impostato automaticamente dal controller in modo che si ottenga la frequenza di funzionamento delle RAM. Questo non rappresentava un problema con il socket 939 in quanto è noto che tutti i processori AMD funzionano di default a frequenze che sono multipli di 200 mhz (1800, 2000, 2200 e cosi via) e che le DDR1 funzionano di base alla medesima frequenza cosicché questo divisore coincideva perfettamente con il moltiplicatore del processore e quindi a default risultava sempre possibile al sistema impostare un numero intero, poiché intero deve essere, che consentisse di dividere la frequenza di funzionamento della CPU ottenendo come risultato 200mhz, e quindi sfruttare al massimo le “vecchie” DDR. Le DDR2 lavorano però a 400mhz mentre il valore FSB è rimasto a 200. Ne consegue che in alcuni casi il processore lavora ad una frequenza, multipla di 200, che divisa per 400 non da un’intero. Ad esempio un processore AM2 che viaggia a 2000mhz effettivi imposterà un divisore pari a 5 ed otterrà una frequenza di 400 che sfrutterà appieno le DDR2 ad 800mhz. Ma su un processore a 2200 il sistema non può trovare nessun intero che divida questa frequenza di funzionamento per il valore a cui le RAM dovrebbero lavorare (400mhz).
AMD ha risolto il problema in modo piuttosto brutale (ed anche un pochetto criticabile): nel caso in cui si monti un processore la cui frequenza non sia divisibile per il valore massimo di funzionamento (a default) delle DDR2 il sistema adotterà automaticamente il divisore intero maggiore. Nel caso dei 2200mhz (che sarebbero 400x5.5) il divisore sarà 6 e darà quindi un risultato di 366Mhz per la frequenza delle RAM. Il che significa, che nel caso di DDR2 PC6400 queste verranno sfruttate a 733Mhz invece che al massimo delle loro potenzialità ad 800Mhz.
Al momento se vi disturba avere RAM “under-sfruttate” a questi livelli avete due strade: o evitate l’acquisto di processori AM2 con frequenze effettive di 2,2 e/o 2,6 Ghz oppure fate un pochetto di overclock per arrivare a coprire tutti i Mhz di funzionamento delle DDR2 PC6400 (tutto ciò nel caso installiate RAM ad 800Mhz…per la 667 o 733 vi dovete rifare i conti).
Pacifica: virtualizzazione hardware di casa AMD
Possiamo a grandi linee definire la virtualizzazione in questo modo: diciamo che un determinato programma, che si decide debba girare su un sistema virtuale, vede (o meglio gli viene fatto vedere) un certo numero di risorse hardware come se esse fossero un’unica risorsa ad esso dedicata. Questo permette a più software di utilizzare la medesima risorsa hardware senza entrare in contrasto fra loro.. Il caso della memoria RAM mi sembra piuttosto esplicativo, anche se ci sono diverse risorse che da tempo si comportano in questo modo sui nostri PC. Anche software come gli emulatori rappresentano un’esempio di virtualizzazione, in quanto creano all’interno del nostro OS un ambiente virtuale destinato unicamente a determinate applicazioni da emulare.
Ma il tipo di virtualizzazione che ci interessa riguardo ai nuovi AMD socket AMè più specifica e prettamente hardware. Essa va riferita prettamente alla creazione di uno o più ambienti virtuali all’interno di un sistema, isolati fra loro specialmente per ragioni di priorità di funzionamento e sicurezza (immaginate di utilizzare per i collegamenti ad internet un sistema operativo isolato e completamente slegato da quello principale del vostro PC….quando prendete un virus l’integrità del SO principale non verrebbe compromessa….ma solo quella dell’ambiente virtuale con cui stavate lavorando).
Ora è bene sapere che simili possibilità non erano fantascienza fino ad oggi ma già da tempo erano diffusi fra aziende con particolari esigenze od anche semplici appassionati. La differenza sta nel fatto che mentre prima era necessario un software che s’interfacciasse fra l’ambiente virtuale ed il processore adesso AMD coglie l’occasione dell’uscita dei nuovi core Orleans e Windsor per implementare un’architettura di virtualizzazione a livello hardware, rendendo di fatto inutile lo strato software d’interfaccia e facendo girare l’ambiente virtuale fisicamente sul processore. Palese che un simile approccio porta notevoli benefici in termini di stabilità e soprattutto di performance.
Per fare un esempio pratico provate a pensare a questo: un PC su cui girano contemporaneamente windows e Linux e si può passare con un semplice click da un sistema operativo all’altro….oppure ancora mentre state lavorando tranquilli sul vostro PC un altro ambiente virtuale è connesso ad internet e sta scaricando anch’esso in tutta tranquillità senza interferenze e senza rischio di infezioni ai vostri preziosi dati di lavoro.
Sarà molto interessante vedere gli sviluppi di questa tecnologia, specie se accoppiata allo sviluppo di processori multi-core.
(to be continued )
Per ora chiudo qui riprendo in seguito lascio sotto una specie di lista appunti con gli argomenti ancora da sviluppare….. a se qualcuno avesse magari voglia di fare qualche schemino, disegno, tabella o semplicemente correzione od implementazione a quanto fin qui esposto farebbe cosa buona, giusta e credo gradita da tutti. Ora vado a dare un’occhio alla mia bella che domani ha un’esame ed è pure tesa per la partita di stasera. See you somewhere in time…magari fra pochi minuti.
Argomenti da inserire:
- Attuali prestazioni e margini di miglioramento teorici
- Processori a basso consumo. Molto più costosi, molto più overcloccabili.
- estensioni multimediali
- I chipset: nVidia ed ATI
- Virtualizzazione: creazione di più computer virtuali all’interno della medesima macchina tecnica diffusa fino ad oggi solo in ambienti altamente specializzati. Favorita dalla potenza crescente.
- Ambiente isolato per navigazione
- Ambiente in cui effettuare prove senza rischio di danneggiamento del SO
- AMD Direct Connect Architecture
- Nel settore notebook Turion x2 64 è stato il primo processore dual core a 64 bit per portatili
- nVidia nForce500
- nVidia 590: niente più studi per l’overclock? Il PC si overclokka da solo all’avvio
- C51XE+MCP55PXE
- MCP55P SLI
- MCP55 Ultra
- I futuri socket AM3 ed integrazione con AM2