PDA

View Full Version : AMD mostra un sistema Athlon 64 Dual Core


Redazione di Hardware Upg
23-02-2005, 09:57
Link alla notizia: http://news.hwupgrade.it/14095.html

Si tratta di una presentazione tecnologica per AMD, che anticipa il debutto delle cpu Athlon 64 con architettura Dual Core attese per la seconda metà dell'anno su piattaforme Socket 939

Click sul link per visualizzare la notizia.

Paganetor
23-02-2005, 10:02
domanda da iGNorante (con la GN maiuscola :D ): che differenza c'è tra due cache separate da un mega l'una e una eventuale da 2 mega condivisa?

Vince 15
23-02-2005, 10:05
Se ne usassero una in cui possono accedere entrambe, si genererebbero molti meno page fault nell cache....
Mettiamo che la CPU0 debba accedere a qualcosa che già sta nella Cache1. Questo non la trova nella sua chace e accede alla ram... e questo rallenta di brutto. Mentre se fosse in comune l'avrebbe già a disposizione...

Chi mi spiega?

cagnaluia
23-02-2005, 10:10
Originariamente inviato da Vince 15
Se ne usassero una in cui possono accedere entrambe, si genererebbero molti meno page fault nell cache....
Mettiamo che la CPU0 debba accedere a qualcosa che già sta nella Cache1. Questo non la trova nella sua chace e accede alla ram... e questo rallenta di brutto. Mentre se fosse in comune l'avrebbe già a disposizione...

Chi mi spiega?

Con le CACHE distinte il livello di protezione è più alto.. per esempio si possono far girare 2 Sistemi (s.o.) differenti sulla stessa macchina in parallelo senza risentire del legame che si avrebbe utilizzando una CACHE comune..

Poi, penso che la velocità sia sempre uguale.. c'è da dire che invece di avere una CACHE grande come la somma delle 2.. avranno una CACHE grande la metà del totale.... tutto qui.

Ogni CORE avrà con la CACHE un suo ambiente di lavoro.. molto più pulito e protetto.

Vince 15
23-02-2005, 10:15
Non sono daccordo, perchè se tu fai girare due SO contemporaneamente, avresti che quello che lavora di più usa più cache. Se è distinta invece, quello che lavora di più sarebbe castrato e sarebbe costretto ad accedere più volte alla ram rallentanto il tutto. Il problema della protezione non sussiste, perchè se non ci sono problemi di gestione della cache (e non ce ne sono!) tutto funziona egregiamente.

L'unica cosa è che probabilmente fare due cache distinte è progettualmente più semplice e meno costosa da realizzare.

Kuarl
23-02-2005, 10:15
in futuro ci sarà un unica cache condivisa ma per adesso sono separate. Perchè? difficoltà progettuali
Anche intel dovrebbe adottare la stessa politica.

cionci
23-02-2005, 10:17
Originariamente inviato da Vince 15
Questo non la trova nella sua chace e accede alla ram... e questo rallenta di brutto. Mentre se fosse in comune l'avrebbe già a disposizione...
In generale questa è una situazione che si presenta molto raramente...perchè o i dati sono presenti in entrambe le cache o è difficile che un programma possa accedere ai dati presenti nell'altra cache...
Comunque esistono sicuramente delle procedure che permetteranno richieste verso l'altro core per poter accedere ai dati contenuti nell'altra cache (L1 ed L2, visto che sono esclusive)...così come esistono nei sistemi dual CPU ;)

Spyn
23-02-2005, 10:19
Se si utilizzasse una cache condivisa dimezzi la velocità degli accessi visto che 2 CPU non possono accedere contemporaneamente alla cache perchè devono "aspettare" che l'altro core abbia terminato il suo accesso.

Altrimenti si rischia di avere cache con dati non coerenti rispetto alla RAM.

cionci
23-02-2005, 10:21
Originariamente inviato da Kuarl
in futuro ci sarà un unica cache condivisa ma per adesso sono separate. Perchè? difficoltà progettuali
Anche intel dovrebbe adottare la stessa politica.
Le prime CPU dual core di Intel con cache condivisa dovrebbero essere quelle nel segmento mobile...ma per un fatto semplice...senza alimentazione di rete lavorerà un core solo che avrà a disposizione l'intera cache...

Comunque se si guarda bene non tutti sono concordi sul fatto che la cache condivisa sia la soluzione migliore...se non sbaglio anche i Power5 di IBM hanno una cache non condivisa...

Vince 15
23-02-2005, 10:22
Ohhh, questa è una risposta seria. Hai perfettamente ragione!!! Grazie mille per la risposta. ;)

Kuarl
23-02-2005, 10:24
Se si utilizzasse una cache condivisa dimezzi la velocità degli accessi visto che 2 CPU non possono accedere contemporaneamente alla cache perchè devono "aspettare" che l'altro core abbia terminato il suo accesso.

Altrimenti si rischia di avere cache con dati non coerenti rispetto alla RAM

beh... come avviene nei database, si potrebbero impostare dei lock per particolari zone di memoria. Un core può bloccare l'accesso ad una particolare cella finché la usa lui, poi la rilascia

L'accesso concorrente alle risorse è una cosa ampiamente trattata sia a livello teorico che a livello pratico, così come i problemi di protezione... bisogna solo mettersi al tavolo e costruire un sistema solido capace di gestire il tutto al meglio

Octane
23-02-2005, 10:30
Come gia' detto da Spyn e Kuarl, il problema maggiore e' la contesa dell'accesso alla cache. questo problema gia' avviene per la memoria, e viene appunto mitigato dalla presenza della cache, se anche qui dovesse presentarsi il problema dell'accesso vi sarebbero sensibili fasi di stallo dei core.

nonikname
23-02-2005, 10:33
Più la cache L2 è grande , più la latenza per cercare un determinato dato aumenta : basta guardare la differenza fra i pentium 5xx e i 6xx ... i primi con un mega di L2 hanno bisogno di 23 cicli di clock per trovare un ipotetico dato , i 6xx , con 2 mb di L2 impiegano 27 cicli di clock...

Per non parlare poi di un eventuale risparmio energetico : se un core è occupato e l'altro è in idle , basta "spegnerlo" assieme alla relativa L2 per dimezzare l'assorbimento .. ;)
Poi , penso che abbiano provato per benino entrambe le soluzioni , prima di arrivare a progettare questa CPU ...

Octane
23-02-2005, 10:45
per chi volesse saperne un po' di piu' sulle scelte progettuali tra un singolo core elaborato con grande cache o piu' core piccoli e veloci, vi consiglio questo articolo sull'architettura del processore Niagara di SUN:
http://www.aceshardware.com/read.jsp?id=65000292

Bye

Octane
23-02-2005, 10:55
sorry, questo link e' piu' appropriato:

http://www.aceshardware.com/read.jsp?id=60000312

Davirock
23-02-2005, 10:57
AMD ha confermato che le cpu Athlon 64 Opteron saranno compatibili con le schede madri Socket 939 attualmente in commercio; sarà necessario un aggiornamento del bios, oltre al fatto che sulla scheda madre sia montata una circuiteria di alimentazione adatta a supportare correttamente le richieste delle cpu Dual Core.

Mi sa che c'è un piccolo errore
Le CPU Opteron sono su socket 940

Oppure saranno disponibili opteron su 939?

Bye

hostile
23-02-2005, 11:28
Direi che un mega di cache è comunque sufficiente per tutto, e poi ricordiamo le latenze di accesso; Intel con il suo nuovo pentium EE 3,73 recensito ieri (o stamane) ha raddoppiato la cache a 2MB e le latenze di accesso alla cache sono quadruplicate. Evidentemente per contenere il costo\prestazioni AMD ha creduto consigliabile utilizzare questa architettura perchè implementare una cache da 1 MB è più semblice, fermo restando validi i discorsi fatti per quanto riguarda la protezione. Per quanto riguarda la domanda posta da "Vince 15" ricordo che comunque due cache distinte in totale aumentano la velocità di accesso alla medesima e che un mega garantisce comunque un basso tasso di fallimenti di pagina.

davestas
23-02-2005, 11:32
Comprero' prossimamente nforce4+a64 3200+ 939, in futuro potro' accoppiarlo con un altro procio???

BigBug
23-02-2005, 11:35
...se ho capito bene il socket single e dual core è lo stesso, 939?
Mentre le MB 939 attualmente in commercio non sono predisposte ad ospitare un dual core.(aggiornamenti bios e circuiteria)
...che delusione...

mackillers
23-02-2005, 11:38
penso che abbiano sbagliato gli atlhon saranno compatibili con il 939

mentre gli opteron col 940.

quindi questi cosi avrannno due mega di chache non condivisa l2?

R@nda
23-02-2005, 11:41
Originariamente inviato da BigBug
...se ho capito bene il socket single e dual core è lo stesso, 939?
Mentre le MB 939 attualmente in commercio non sono predisposte ad ospitare un dual core.(aggiornamenti bios e circuiteria)
...che delusione...

Va bene anche sulle sk madri attuali,previo aggiornamento bios,bisogna vedere poi quali sk madri saranno compatibili e quali no.
Più in la Amd introdurrà un nuovo socket dedicato al dual core (penso nel 2006).

Cmq questa News conferma quello che volevo sapere....a me che con il PC ci gioco e non uso programmi specifici per il dual core questa Cpu inizialmente non servirà a niente (finchè non scriveranno anche i giochi per il dual...se mai lo faranno).

mackillers
23-02-2005, 11:44
io sapevo che i pentium dual non erano compatibili per problemi dii circuiteria visto che consumano un botto.

avranno questi problemi anche gli atlhon? dio spero di no!!

Andala
23-02-2005, 11:46
Da un punto di vista di prestazioni è meglio due Opteron ognuna con un proprio controller di memoria e Hypertransport o un solo Opteron Dual core di pari frequenza ma con un solo controller di memoria e un solo canale Hypertransport?

Ciao,

Andala:)

mackillers
23-02-2005, 11:46
Non ti peroccupare scriveranno anche igiochi per dual,
tra due anni con cpu single core non riuscirai neanche ad usare Windows Longhorn.

la duara legge del mercato se nò come le vendono ste cpu?!
e come fanno a fatte cambia pc?

mackillers
23-02-2005, 11:48
penso due opteron con due Hyper transport porprio per questo motivo.
poi quando uscira il nuovo socket prob raddoppieranno la banda del hyper transport.

mackillers
23-02-2005, 11:49
naturalmente tutto IMHO!

hostile
23-02-2005, 11:51
Più che riscrivere i giochi per dual core immagino ricompilare i giochi per dual core con un compilatore che lo supporti.

R@nda
23-02-2005, 11:51
Originariamente inviato da mackillers
Non ti peroccupare scriveranno anche igiochi per dual,
tra due anni con cpu single core non riuscirai neanche ad usare Windows Longhorn.

la duara legge del mercato se nò come le vendono ste cpu?!
e come fanno a fatte cambia pc?

Ma due anni sono cosa (a me una Cpu dura 1 anno) sfruttarlo alla sua uscita un altra.....e poi scrivere applicazioni per il supporto all'Smp costa,non sarà una cosa così immediata.

Insomma se per il 2006 inoltrato queste Cpu avranno un senso anche nei giochi mi sta bene.....ma fino ad allora.

mackillers
23-02-2005, 11:55
infatti il senso della mia affermazione erà proprio quello!

per ora non servono poi verranno ricompilati adeguatamenteper dare dei vantaggi, sopratutto di vendite

Andala
23-02-2005, 12:08
Originariamente inviato da mackillers
penso due opteron con due Hyper transport porprio per questo motivo.
poi quando uscira il nuovo socket prob raddoppieranno la banda del hyper transport.


Grazie.

Proprio ora Amd ha portato HyperT deglio Opteron a 2Ghz e nella seconda metà dell'anno rilascerà CPU con eccellenti prestazioni nei consumi.
:)

cionci
23-02-2005, 12:14
Originariamente inviato da BigBug
...se ho capito bene il socket single e dual core è lo stesso, 939?
Mentre le MB 939 attualmente in commercio non sono predisposte ad ospitare un dual core.(aggiornamenti bios e circuiteria)
...che delusione...
E' una questione di potenza...se non sbaglio il TDP massimo degli AMD dual core è 113 Watt...contro gli 80 Watt dei Winchester...
Se la scheda madre ce la fa a gestire 113 Watt allora non avrai problemi (basterà un'aggiornamento del BIOS)... Su diverse schede madri molti Athlon 64 viaggiano overclockati assorbendo una potenza sicuramente paragonabile a quella necessaria per i dual core...

MaxArt
23-02-2005, 12:20
Originariamente inviato da Davirock
Oppure saranno disponibili opteron su 939?Non credo proprio. Non avrebbe senso per AMD: sarebbero degli Athlon64 FX e basta ;)
(Un tempo, in effetti, non c'era alcuna differenza tra l'Athlon64 FX-51 e l'Opteron 148, ma non credo si ripeterà più.)

Originariamente inviato da hostile
Intel con il suo nuovo pentium EE 3,73 recensito ieri (o stamane) ha raddoppiato la cache a 2MB e le latenze di accesso alla cache sono quadruplicate. Non mi pare che 27 sia il quadruplo di 23... :rolleyes:

Originariamente inviato da BigBug
Mentre le MB 939 attualmente in commercio non sono predisposte ad ospitare un dual core.(aggiornamenti bios e circuiteria)Aggiornare il BIOS non è un problema. Quanto alla circuiteria, devi tenere presente che le mobo attuali soddisfano abbondantemente le richieste di un Opteron@130 nm, mentre i dual core saranno a 90 nm. Credo che le mobo ce la facciano, per la maggior parte.

TheDarkAngel
23-02-2005, 12:32
attualmente un winchester consuma 40w sottosforzo... ben sotto il tdp fornito da amd... quindi un dual consumerà + o - come il vecchio newcastle

mackillers
23-02-2005, 12:33
anchio penso ce la facciano, lo spero! io volevo farmi un upgrade con un dual core ma non a costo di cambiare mobo.

mackillers
23-02-2005, 12:36
penso che le schede attuali ce la facciano, magari reggeranno poco L'OverClock ma ce la faranno, bisogna ricordare che le schede buone attuali reggono un athlon fx 55 Okkato!

poi è da un pò che si sa questa cosa e spero che un costruttore serio abbia implementato un circuiteria maggiorata per poter reggere tale carico.

mackillers
23-02-2005, 12:44
due opteron divisi attualmente hanno:
2 canali HT 1ghz

2 core a 2,6ghz

2 memory controller

il doppio della superfice di dissipazione.

mentre un dual core avra almeno inizialmente molti problemi di dissipazione che costringeranno AMD a diminuire la freq dei singoli core ( non saranno due 2,6 ghz ma magari due 1,8ghz o giu di li)

l'unico vantaggio potrebbe stare nei minori tempi di latenza negli scambi e dialoghi fra le due cpu, per dirla in modo semplice essendo sullo stesso chip dialogheranno e penseranno meglio in coppia)

questo soprattutto in un ottica futura di un ht a 2ghz e di una chache condivisa.

Tutto Molto IMHO

ByBy

giustinoni
23-02-2005, 12:46
Ho una domanda stupida...

Ma nelle MoBo attuali 939 dove si monterà il secondo processore?
C'è spazio solo per uno!!!

Oppure se ne monta uno che ne "comprende" due?:confused:

mackillers
23-02-2005, 12:47
probabilmente una volta usciti questi procio le case di schede madri, prima sventoleranno la loro compatibilità per tali cpu e poi sfrutteranno la cosa per publicizare nouve schede madri identiche ma col marchietto "tested fo extreme dual core solution" o qualcosa di simile.

mackillers
23-02-2005, 12:48
c'è nessuno?!!!!!!!!

mi chiamo Sodio.. Particella di Sodio!

Shhh!!!!

cionci
23-02-2005, 12:48
Originariamente inviato da giustinoni
Oppure se ne monta uno che ne "comprende" due?:confused:
Per dual core si intende proprio questo ;)

mackillers
23-02-2005, 12:49
si monta un solo procio!!!
che al interno ha due core per questo si chiamano DUAL COre!

Andala
23-02-2005, 12:53
Io ci sono!

A questo punto preferirei una soluzione dual CPU opteron piuttosto che Dual Core Opteron.

giustinoni
23-02-2005, 12:57
LOL:D

Finalmente ho capito!!!

Allora posso comprarmi il Winch 3500+ a giugno tranquillamente, no?:)

cionci
23-02-2005, 13:00
Originariamente inviato da Andala
Io ci sono!

A questo punto preferirei una soluzione dual CPU opteron piuttosto che Dual Core Opteron.
Sicuramente è più performante un dual CPU Opteron di un solo Opteron dual core (alla stessa frequenza)...un motivo su tutti una banda aggregata teorica maggiore verso la memoria (quasi doppia)...

Ma il confronto non è da fare su dual cpu - dual core...ma dual CPU contro due CPU dual core... E qui andrà visto sulla base delle frequenze per quali applicazione sarà più conveniente l'una e su quali l'altra...

Andala
23-02-2005, 13:07
Originariamente inviato da cionci

Ma il confronto non è da fare su dual cpu - dual core...ma dual CPU contro due CPU dual core... E qui andrà visto sulla base delle frequenze per quali applicazione sarà più conveniente l'una e su quali l'altra...

Ma con due CPU dual core i consumi saranno sensibilmente più alti e si dovrà passare ad un OS che supporti 4 core fisici come Linux o Windows server stardard ED. come minimo.
Per non parlare dei costi.

Se si pensi all'ultima soluzione Abit per dual Opteron con nForce4 che supporta anche ram non ECC fino a 8 GB, Opteron diverrebbe più abbordabile e una soluzione molto vantaggiosa per scopi professionali.
Considerando anche che la mobo in questione ha 8 strati.

mackillers
23-02-2005, 13:36
giusto e poi se vuoi quando le architetture dual core saranno più testate passi ad un doppio procio dual core:
Tot 4 core!

per la licenze visto le attuali tendeze costruttive la case software dovrebbero adttarsi e dare le licenze in base al numero di Processori e non di Singoli Core.

^TiGeRShArK^
23-02-2005, 13:39
Originariamente inviato da hostile
Più che riscrivere i giochi per dual core immagino ricompilare i giochi per dual core con un compilatore che lo supporti.
NON si può.
un compilatore non può sapere se la logica del programma ne permette la parallelizzazione ed è incapace di gestire in maniera automatica la gestione delle dipendenze e della sincronizzazione (o meglio x le dipendenze qualcosa si può fare).
Occorre riscrivere il codice rendendolo multi-threaded.
è proprio una filosofia di programmazione differente.

mackillers
23-02-2005, 13:41
si se scegli un ottima scheda madre, l'ottimum sarebbe una scheda che gia ora garantisca un ottimo risultato in overclock.

per intenderci se prendi una mobo economica 80-100 euro, quasi sicuramente il dual core non ci girerà.

se invece compri una basata su Nf4 tipo Lanparty o msi K8n Diamond sli vai sul tranquillo ti bastera un aggiornamento del bios!

devi farti le tue valutazioni. schede del genere costano molto. e nessuno ti dara una garanzia valida che vadano con i dula core potresti sempre avere una brutta sorpresa fra qualche mese.

Andala
23-02-2005, 13:57
Originariamente inviato da mackillers
giusto e poi se vuoi quando le architetture dual core saranno più testate passi ad un doppio procio dual core:
Tot 4 core!

per la licenze visto le attuali tendeze costruttive la case software dovrebbero adttarsi e dare le licenze in base al numero di Processori e non di Singoli Core.


E sarebbe la scelta giusta anche dal punto di vista di protezione dell'investimento per i professionisti.

The3DProgrammer
23-02-2005, 14:17
Originariamente inviato da hostile
Più che riscrivere i giochi per dual core immagino ricompilare i giochi per dual core con un compilatore che lo supporti.


eheh...magari fosse così facile ;)

il fatto è ke, come è già stato detto e ridetto, la programmazione multithreaded è decisamente + complicata, e richiede in determinati casi addirittura di ripensare gli algoritmi e le strutture dati utilizzate. Alcuni algoritmi poi sono intrinsecamente sequenziali, motivo per cui è necessario introdurre delle tecniche di sincronizzazione apposite ( semafori, mutex e sezioni critiche per citarne alcune). In realtà esistono in giro alcuni compilatori (tra i quali quello della intel ) che offrono la possibilità di parallelizzare il codice ove possibile, ma questo succede solo in particolari situazioni e sicuramente non ottenendo il max delle performance.

Per questo avere una CPU dual core ( o + in generale un sistema SMP) nn sempre significa avere il doppio delle performance ;)

ciauz

cionci
23-02-2005, 14:55
Originariamente inviato da Andala
Ma con due CPU dual core i consumi saranno sensibilmente più alti e si dovrà passare ad un OS che supporti 4 core fisici come Linux o Windows server stardard ED. come minimo.
Per non parlare dei costi.
Perchè cosa pensi che usino già in un sistema dual CPU ?

giustinoni
23-02-2005, 15:29
Originariamente inviato da mackillers
si se scegli un ottima scheda madre, l'ottimum sarebbe una scheda che gia ora garantisca un ottimo risultato in overclock.

per intenderci se prendi una mobo economica 80-100 euro, quasi sicuramente il dual core non ci girerà.

se invece compri una basata su Nf4 tipo Lanparty o msi K8n Diamond sli vai sul tranquillo ti bastera un aggiornamento del bios!

devi farti le tue valutazioni. schede del genere costano molto. e nessuno ti dara una garanzia valida che vadano con i dula core potresti sempre avere una brutta sorpresa fra qualche mese.

Grazie del consiglio, sto pensando di prendere una DFI LanParty NF4 SLi-DR, quindi il meglio sul mercato;)
(adesso non userei lo SLI, ma se si imporrà sul mercato mi adeguerò...e come dici tu probabilmente su questa MoBo funzioneranno anche i dual core)

sirus
23-02-2005, 15:40
beh ragazzi, il fatto di avere due cache permette si una maggior semplicità di progettazione per la cpu ma se si avesse una cache unica la cosa sarebbe notevolmente migliore anche se la progettazione sarebbe molto + complessa ;)
perquanto riguarda il controller della ram pensavo ci sarebbero stati due distinti controller...invece :( così ci sarebbe lo stesso problema dei vecchi xeon per intel, ossia un bus condiviso per l'accesso alla memoria che penalizza le prestazioni

sirus
23-02-2005, 15:41
PS staremo a vedere...
molto intelligente la scelta di lanciare queste cpu come linea athlon64 e non athlon64fx ;)

Andala
23-02-2005, 15:49
Originariamente inviato da cionci
Perchè cosa pensi che usino già in un sistema dual CPU ?

Io mi riferivi al caso di un sistema con 2 CPU dual core in cui sarebbero da tener conto dissipazione e consumi.
Inoltre una cpu dual core di quanto sarebbe effetivamente overclockabile usando i normali sistemi aria - liquido?

DioBrando
24-02-2005, 00:29
Originariamente inviato da cionci
E' una questione di potenza...se non sbaglio il TDP massimo degli AMD dual core è 113 Watt...contro gli 80 Watt dei Winchester...
Se la scheda madre ce la fa a gestire 113 Watt allora non avrai problemi (basterà un'aggiornamento del BIOS)... Su diverse schede madri molti Athlon 64 viaggiano overclockati assorbendo una potenza sicuramente paragonabile a quella necessaria per i dual core...

67 W il Winchester ;)

cionci
24-02-2005, 07:00
Parlavo di TDP dell'intera famiglia...quello che in pratica danno ai produttori di schede madri come limite massimo... E' solo 67 Watt ?

DioBrando
24-02-2005, 08:51
Originariamente inviato da cionci
Parlavo di TDP dell'intera famiglia...quello che in pratica danno ai produttori di schede madri come limite massimo... E' solo 67 Watt ?

dovrei rivedere il datasheet ma mi pare sia proprio 67...80 e spicci si riferiva ai Clawhammer/Newcastle, tant'è che infatti anche per le cpu mobile montate nei DTR i valori sn pressochè gli stessi, 82 per le + onerose e 62 per i Mainstream ( vado a memoria eh...:))

MaxArt
24-02-2005, 09:08
Originariamente inviato da cionci
Parlavo di TDP dell'intera famiglia...quello che in pratica danno ai produttori di schede madri come limite massimo... E' solo 67 Watt ? Sì, è di soli 67 W.
http://users.erols.com/chare/elec.htm
I Newcastle/Clawhammer avevano 89 W di TDP, il Paris 82, gli Athlon64 Mobile 62-81.5 W. Dei Sempron LA appena 25 W :eek:

Octane
24-02-2005, 09:20
Originariamente inviato da sirus
beh ragazzi, il fatto di avere due cache permette si una maggior semplicità di progettazione per la cpu ma se si avesse una cache unica la cosa sarebbe notevolmente migliore anche se la progettazione sarebbe molto + complessa ;)
perquanto riguarda il controller della ram pensavo ci sarebbero stati due distinti controller...invece :( così ci sarebbe lo stesso problema dei vecchi xeon per intel, ossia un bus condiviso per l'accesso alla memoria che penalizza le prestazioni

beh, c'e' da dire che se avessero implementato due distinti controller di memoria (quindi 4 canali complessivi) avrebbero dovuto anche aggiungere numerosi piedini al package perdendo quindi la compatibilita' con le piattaforme esistenti. Per quanto sono riuscito a capire anche intel segue la medesima strada, entrambi i core del package condividono le stesse interconnessioni verso la scheda madre.
Questo potrebbe rivelarsi un collo di bottiglia (rispetto a due processori separati) nel caso di calcoli non particolarmente complessi che richiedono un congruo e costante accesso ai dati; nel caso invece di calcoli complessi (es FPU nel calcolo scientifico) vi sara' un impatto inferiore.

hostile
24-02-2005, 09:35
Per ^TiGeRShArK^:

NON si può.
un compilatore non può sapere se la logica del programma ne permette la parallelizzazione ed è incapace di gestire in maniera automatica la gestione delle dipendenze e della sincronizzazione (o meglio x le dipendenze qualcosa si può fare).


Grazie per la dritta, so programmare abbastanza bene anche se considero il compilatore una sorta di scatola nera. Comunque sto cercando di fissare bene il concetto. Che io sappia un thread è un unità di esecuzione che, a differenza del task, condivide indirizzi di memoria, giusto? Questo da la possibilità di avere in memoria lo stesso segmento di codice per varie istanze di una stessa applicazione. (Ad esempio un socket MThread che effettua un parsing su una stringa, nel caso di più richieste contemporanee, si evita di caricare tutte le volte il codice che serve ad effettuare il parsing e ne tiene quindi solo una copia in memoria a disposizione). Se mi sono spiegato bene, anche se avevo rimosso i concetti di semaforo, mutex e monitor dalla mia testa (vi ringrazio del refresh) allora capisco bene cosa significa avere a che fare con 2 core.

hostile
24-02-2005, 09:51
Per Maxart


Non mi pare che 27 sia il quadruplo di 23...


Mi sembra innegabile, volevo dire che hanno aumentato la latenza di 4, da 23 a 27, cicli di orologio; la fretta è una consigliera "malvagerrima".

midian
24-02-2005, 14:14
praticamente sarebbe come un hyper threading ?
pero ci sono 2 cpu e 2 cache di 1 e 2 livello

hostile
24-02-2005, 16:55
x midian
praticamente sarebbe come un hyper threading ?
pero ci sono 2 cpu e 2 cache di 1 e 2 livello

Da quello che ho capito, le cose dovrebbero stare più o meno così:

Sito dell'intel: http://www.intel.com/technology/hyperthread/

Praticamente l'Hyper-Threading è una recente tecnologia che servirebbe per massimizzare l'utilizzo del processore in modo che risorse di calcolo non vadano sprecate nel caso di applicazioni multi-thread. Il discorso sui due processori logici è accennato nel sito dell'Intel.

Nel caso dei dual core ci sono due core fisici (non logici sulla CPU). Nel caso quindi che l'Hyper-Threading sia abilitato su questa nuova CPU i processori logici sarebbero 4.

Andreakk73
24-02-2005, 17:59
E' possibile secondo voi che avendo una casce condivisa l'uno debba aspettare l'altro prima di accedere ad essa? e poi non c'e il rischio di caricare i stessi dati due volte? Potete darmi dei chiarimenti seri. Grazie.

cdimauro
25-02-2005, 07:39
Originariamente inviato da Andreakk73
E' possibile secondo voi che avendo una casce condivisa l'uno debba aspettare l'altro prima di accedere ad essa?
Certo, e non è neppure raro. Ogni cache L2 ha in genere un numero di "porte" di accesso (una o due) "indipendenti" che possono essere usate per leggere o scrivere dati "contemporaneamente". E' chiaro che se una cache L2 deve servire due processori anziché uno, per forza di cosa deve assegnare queste porte decidendo di volta in volta a quale processore "cederle" e quante (potrebbe anche fornirle tutte e due alla stessa cpu e lasciare l'altra completamente senza).
Si potrebbero aumentare il numero di porte di accesso, ma questo aumenterebbe notevolmente la logica della cache L2 (già con due porte anziché una è abbastanza complicata).
e poi non c'e il rischio di caricare i stessi dati due volte? Potete darmi dei chiarimenti seri. Grazie.
Se la memoria è condivisa, non c'è questo pericolo: verranno caricate sempre una volta (ad esempio il codice e i dati globali di una DLL).

MaxArt
25-02-2005, 09:17
Originariamente inviato da cdimauro
Se la memoria è condivisa, non c'è questo pericolo: verranno caricate sempre una volta (ad esempio il codice e i dati globali di una DLL). E nei P4 la cache è condivisa oppure no?
Per la trace cache, non credo proprio sia condivisa! Ma per la L2?
Può essere che parte di cache sia condivisa e parte no, magari su livelli diversi?

cionci
25-02-2005, 10:14
Sembra che sia condivisa solamente sui Dual Core mobile...

MaxArt
25-02-2005, 10:22
Originariamente inviato da cionci
Sembra che sia condivisa solamente sui Dual Core mobile... Quindi nei Prescott ci sono 512 KB di cache L2 per ogni processore virtuale?

leoneazzurro
25-02-2005, 10:38
Non credo. Anche perchè HT è molto diverso da "dual core".

cionci
25-02-2005, 11:56
Originariamente inviato da MaxArt
Quindi nei Prescott ci sono 512 KB di cache L2 per ogni processore virtuale?
In HyperThreading non ha senso parlare di cache condivisa o meno...

cdimauro
25-02-2005, 13:22
Originariamente inviato da MaxArt
E nei P4 la cache è condivisa oppure no?
Per la trace cache, non credo proprio sia condivisa! Ma per la L2?
Può essere che parte di cache sia condivisa e parte no, magari su livelli diversi?
TUTTE le memorie cache dei P4 sono "suddivise", nel senso che esistono delle "linee dati" (chiamate linee di cache: la dimensione varia a seconda del tipo di cache) che appartegono esclusivamente al primo thread e altre che appartengono al secondo thread.

Ma ci sono anche delle linee cache "in comune": sono quelle, come ho già detto, che contendono codice e/o dati globali delle librerie condivise. Di esse nelle varie cache ne esiste una sola copia, che viene utilizzata indifferentemente da tutti e due i thread (e in generale da tutti i processi).

midian
25-02-2005, 21:25
Originariamente inviato da hostile
x midian


Da quello che ho capito, le cose dovrebbero stare più o meno così:

Sito dell'intel: http://www.intel.com/technology/hyperthread/

Praticamente l'Hyper-Threading è una recente tecnologia che servirebbe per massimizzare l'utilizzo del processore in modo che risorse di calcolo non vadano sprecate nel caso di applicazioni multi-thread. Il discorso sui due processori logici è accennato nel sito dell'Intel.

Nel caso dei dual core ci sono due core fisici (non logici sulla CPU). Nel caso quindi che l'Hyper-Threading sia abilitato su questa nuova CPU i processori logici sarebbero 4.

:sbavvv: :sbavvv: :sbavvv: :sbavvv:
4 cpu...mica male però !!!!

MaxArt
25-02-2005, 21:42
Originariamente inviato da midian
4 cpu...mica male però !!!! Non ci sarà HT nei P4 dual core, solo nei P4 EE.
Che mi risulti! :D

cionci
26-02-2005, 00:17
Sì, sarà disabilitato nei P4 dual-core non EE...

midian
26-02-2005, 14:38
ah :mad:

DioBrando
26-02-2005, 15:18
Originariamente inviato da MaxArt
Non ci sarà HT nei P4 dual core, solo nei P4 EE.
Che mi risulti! :D

sì...una mossa IMHO abb inspiegabile...

leoneazzurro
26-02-2005, 15:43
Spiegabile solo come mossa commerciale: evidentemente (come già succede ora) le prestazioni di un P4EE dual core non sarebbero molto diverse da un P4 dual core "normale", quindi è una mossa tesa solo a giustificare la differenza di prezzo che sicuramente ci sarà.

xeal
26-02-2005, 23:40
Una delle motivazioni per la scelta di non condividere la L2 potrebbe risiedere nella natura "esclusiva" (spero di ricordare il termine esatto) della cache degli Athlon: ciò che si trova nella L1 NON si trova nella L2 e viceversa. Di conseguenza, condividere la sola L2 non darebbe la certezza di trovare i dati cercati, e dubito che condividere anche la L1 sarebbe una scelta probonibile.

Inoltre, aggiungere dei semafori alle linee di cache, come qualcuno ha suggerito, probabilmente produrrebbe solo una maggiore complessità circuitale e un peggiore utilizzo della cache e dubito che ridurrebbe (significativamente) la latenza che si avrebbe nelle contese su tutta la cache (almeno credo).

Quindi, considerando la "questione" della L1, i problemi di contesa della L2 e (seppur con minore importanza, probabilmente) le maggiori latenze legate al maggior quantitativo di cache, forse per le cpu AMD la non condivisione della L2 nei dual core, con l'utilizzo, di conseguenza, delle tecniche "tradizionali" per la comunicazione e il controllo per la coerenza delle cache nei sistemi dual cpu, rappresenta la scelta migliore. Naturalmente vi sono anche motivi di carattere economico (si sarebbe resa necessaria una profonda revisione dei core).

Sicuramente vi saranno degli scenari di utilizzo che si avvantaggeranno di una cache condivisa o non condivisa (quali, e quanto frequenti soprattutto, non saprei dire).

Ciao a tutti ;)