Newsgroup: it.comp.hardware.cpu
Titolo: di frequenze, approci ed ipc

Ciao a tutto il NG
Sono un Lurker, beato proprietario di un PII300 ben lontano dalla
pensione, ma seguo con blando interesse l'evoluzione dei processori,
anche se devo ammettere che il mio reddito mi porta a perteggiare per
AMD :-)
Fatta questa inutile e superflua premessa, veniamo al dunque, ed alla
domanda (la classica domanda da un milione di dollari...) che intendo
porre agli esperti del NG, e ai tifoso di ambedue le parti in lotta... A
parità di MIPS, quale ritenete essere l'approcio migliore: alta
frequenza e basso ipc o viceversa (che, a grandi linee, mi sembrano
essere le posizioni rispettivamente di Intel e AMD)?
Voglio dire, meglio un processore a 1 GHz in grado di processare due
istruzioni per ciclo di clock o uno a 2GHz in grado di processarne una
sola (Assumendo per semplicità un ipotetico Istruction Set in cui tutte
le istruzioni vengono svolte nello stesso tempo)? quali altri fattori,
come la lunghezza delle pipeline, la potenza assorbita, il calore
dissipato e il costo di realizzazione sarebbero in questo ipotetico caso
determinanti [1]?
Spero di non scatenare un flame, ma ho assistito a molte accese
discussioni su questo NG tra chi sosteneva la velocità pura (alla Intel)
e chi difendeva l'implementazione architetturale più spinta (stile AMD),
e desidererei capire quale, al di là delle reali implementazioni, sia
l'approcio più promettente
Un grazie anticipato
Un Corrado che a volte si concede troppi onanismi mentali...
[1] Ho volutamente tralasciato aspetti non intrinsecamente legati alla
CPU intesa come chip fisico e spesso più commerciali che tecnici, quali
la stabilità della piattaforma socket/memoria e la velocità della RAM,
che si possono immaginare identiche per i due casi ipotetici
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ha scritto nel messaggio
news:707370fc844c0de357e...@mygate.mailgate.org...

Secondo me deve esistere un giusto compromesso. Una elevata frequenza di
funzionamento porta con se anche un innalzamento del calore generato,
fattore questo negativo (vedi P4). D'altra parte anche una eccessiva
complicazione, necessaria per aumentare l'IPC, porta inevitabilmente ad una
limitazione del clock (vedi HP PA-8000). Bisogna trovare un saggia via di
mezzo, che potrebbe(dico potrebbe) essere il K8, con una pipeline lunga ma
non lunghissima come il P4. Secondo me comunque è meglio tendere
all'efficienza piuttosto che alla frequenza, per le difficoltà reali di
realizzare processori ad altissima frequenza. Secondo me è anche l'approcio
più economico, inteso come MIPS/Costo di produzione. Saluti.

 determinanti [1]?
E' possibile dare due risposte:
1) basta valutare costi, dissipazione termica e le altre caratteristiche "di
contorno", come tu stesso dici
2) bisogna valutare in prospettiva quale delle due soluzioni avrà più
possibilità in futuro: al momento sembra che cercare di incrementare l'IPC
sia la cosa migliore: non ci sono limiti teorici, l'unico problema è che è
una strada abbastanza complicata e costosa. Allungare le pipeline oltre
certi livelli, invece, comincerà presto ad essere controproducente: così si
allungano anche gli stalli e non è difficile intravedere, in prospettiva,
processori la cui pipeline non è quasi mai a regime. La branch-prediction
stessa ha i suoi limiti.
Alla fine, probabilmente, si arriverà al punto che la filosofia dell'IPC
alto dovrà arrendersi ai costi di progettazione e ricerca e passare a
pipeline sempre più lunghe, mentre i processori con pipeline lunghissime non
avranno incrementi di prestazioni se non migliorando l'IPC. Si ha però
l'impressione che i processori attuali abbiano dei limiti nell'uno e
nell'altro senso. Probabilmente per mantenere le unità di esecuzione sempre
a regime non c'è altra scelta che passare ad architetture VLIW. Il problema
è che, finora, nessun VLIW general-purpose si è dimostrato competitivo.
Saluti.
--
//  Xelloss dal portatile || in real life: Wilmer Ricciotti  \\
|  
wirix...@libero.it
 (elimina il demone per rispondermi)  |
|    ICQ: 3233084        IRC: Xelloss@AzzurraNet, @ChatNow    |
| Hardware Information & Technology: 
http://hit.edengames.net
 |
\_______Like the Phoenix I rise from the ashes of life________/

essere le posizioni rispettivamente di Intel e AMD)?
IHMO entrambe le soluzioni sono buone, l'importante è avere un giusto
paragone tra i due, in modo che ogni utente possa scegliere il
prodotto giusto e non basare tutto su dei numeretti, dando il giusto
peso al costo della macchina e oggi differnze a occhio tra una
configurazione da 1000 e 3000 euro non sono evidenti come 5 anni fa.

> a parità di MIPS, quale ritenete essere l'approcio migliore:
già qui l'approccio è sbagliato...

essere le posizioni rispettivamente di Intel e AMD)?
Provo a dire la mia, sperando che i saggi del ng non ridano troppo e
che nessuno abbia già scritto un post simile ;)
Al momento attuale i due approcci sembrano grosso modo equivalenti,
visto che P4 e XP hanno prestazioni simili (anche se c'è da dire che
K7 è una architettura che sta arrivando alla fine mentre P4 ha ancora
moltissimo da dire... se il confronto continuasse per anni P4
probabilmente la spunterebbe, ma al momento non c'è gran differenza
tra le due famiglie); IMHO comunque salire in frequenza è "peggio",
per due motivi:
1) + MHz = + calore! (anche se un processore con IPC alto scalda - a
pari frequenza - più di uno con IPC basso)
2) una CPU col clock alto deve avere delle RAM e un bus in grado di
reggerne il passo: secondo me è sbagliato dire "tenendo le velocità
delle RAM uguali", perché una CPU che basa tutto sul clock ha bisogno
di RAM iperveloci (e ipercostose), perché se il divario clock/bus si
allarga, l'efficienza scende a vista d'occhio (tant'è vero che il P4
con le SDRAM perde in % molto più che un K7): tant'è vero che l'Athlon
va tranquillamente con un bus a 266 MHz (anche se adesso inizia a
sentirne gli effetti...), a un P4 2G non bastano nemmeno i 400 MHz di
targa e pure i 533 tra un po' inizieranno ad andare stretti (e anche
così, per sfruttarlo a pieno servirebbe un costoso dual channel DDR) e
alzare troppo la frequenza di bus non è facile perché le piste sulla
mobo generano interferenze su interferenze... insomma, per me, finché
il progetto non è troppo costoso è meglio alzare l'IPC; soprattutto,
progettare la CPU in modo che gli allungamenti della pipeline vengano
bilanciati da altre migliorie.
Oh, io ho detto la mia... ora smettete di ridere che vi prendete una
palla di fuoco tra i denti :P
-- 
ZHELGADIS THE LIGHTBRINGER (ICQ 33134824)
Tessera #008 BAG, #000 DPPSJ, #013 BAT, #012 TFC
"Il Grande Fratello? Non lo farei mai vedere ai miei figli."
(Giovanni Modina, direttore di Canale 5)

 reggerne il passo: secondo me è sbagliato dire "tenendo le velocità
questo vale anche per cpu con ipc alto. dopotutto la banda di memoria e' 
sfruttata dal programma in esecuzione e non dal processore...