Newsgroup: it.comp.hardware.cpu
Titolo: SIMD cosa sono e come possono cambiare il confronto Athlon - PIII

Gentile NG,
qualcuno sa bene cosa siano le SIMD del P III?
E' vero che se fossero disponibile programmi che sfruttino le SIMD il P III
sarebbe tre volte piu' veloce dell'Athlon?
A presto.

Mauro Marchesan ha detto:

Secondo alcuni benchmark di 
www.hwupgrade.it
 con il gioco Expendable
(l'unico a sfruttare quella roba del PIII), in tal caso i due a
parita` di clock pareggiano.
-- 
    Ciao
	Pardo

sarebbe tre volte piu' veloce dell'Athlon?
indovina cosa succederebbe se ci fossero programmi che supportassero
le SIMD del athlon (le 3dnow)???
--
*******************************************************************
"La vanità è il mio peccato preferito" John Milton
visita la mia homepage su Friends:
http://come.to/friendsitaliabis
http://www.geocities.com/pamperoloco
Tutto quello che hanno detto i comunisti sul comunismo è falso
ma tutto quello che hanno detto i comunisti sul capitalismo è vero.
*******************************************************************

sarebbe tre volte piu' veloce dell'Athlon?
se gli stessi programmi sfruttassero bene le 3dNow+ dell'Atlhon, rimarrebbe
sempre piu' veloce l'athlon (a pari clock).
anzi, in una ipotetica situazione in cui sia le estensioni del PIII che
quelle dell'athlon fossero ottimizzate in modo ottimale (see, come no...),
l'athlon dovrebbe essere circa due volte piu' performante del PIII.
---
    (iao!!oai)                                    (ICQ: 10860566)
    //.aurizio
    I bimbi buoni vanno in paradiso.
    I bimbi cattivi vanno dove gli pare!

>l'athlon dovrebbe essere circa due volte piu' performante del PIII.
e questo mi fa inczz... con i programmatori ancora di piu...argh    
pensa quanto verrebero rivalutati i k6-x .....pareggerebbero i celly
in fsb battendoli nettamente negli interi....


in fsb battendoli nettamente negli interi....
un attimo, parlavo delle 3dnow!+ del Athlon, non quelle dei k6-xx.
anche tralasciando le istruzioni in piu' (che permettono prestazioni
maggiori ma in campi specifici), l'athlon ha piu' unita' 3dnow! dei k6-xx,
hanno ottimizzato un po' tutto e ridisegnato le pipelines, in altre parole
per sfruttarlo al meglio bisognerebbe riottimizzare il codice 3dNow! anche
rispetto ad un codice ottimizzato per k6-xx ma a quel punto diventa un
mostro.
inutile dire che le probabilita' che qualcuno si metta a fare un lavoro del
genere sono tendenti a zero...


genere sono tendenti a zero...
Gia' ai tempi del 486 si disse che ottimizzando il codice per 486 si
poteva avere un incremento rilevante di prestazioni rispetto alla
stessa applicazione scritta per il 386.
Da ignorante mi chiedo, visto che buona parte dei programmi e' scritta
in C, se non basterebbe avere un compilatore "patchato" per
ottimizzare la compilazione verso una determinata architettura.
Per programmi "seri" basterebbe poi mettere sul cd le varie versioni
(k6, p-III, k7) e all'installazione installare quello piu'
appropriato.
Ciao,
  Lonewolf.
--------------------------------------
Vuoi entrare in Internet?
Compra un modem, non un Pentium 3!!
--------------------------------------

 le SIMD del athlon (le 3dnow)???



Mmmm forse ti sei dato la risposta da solo... Dovrebbero fare 3-4 versioni
di programmi differenti e questo determinerebbe senza dubbio un aggravio di
costi per le Software House...

 appropriato.
no, purtroppo non e' cosi' semplice. per sfruttare le estensioni SSE o
E3Dnow occorre andare a riscrivere proprio il codice, e tra l'altro non si
tratterebbe di sostituire una chiamata di funzione con un altra, ma proprio
di ripensare le procedure in funzione delle nuove istruzioni. una cosa
simile e' molto costosa, soprattutto in termini di debug, ed e' proponibile
solo in campi molto specifici dove la potenza delle SSE/E3DNow serve
veramente e i ricavi giustificherebbero lo sforzo.
quello che dici tu e' invece l'ottimizzazione in funzione dell'architettura
di cpu, che tra l'altro nessuno fa' neanche +, in particolare per i K7
(intel e' potente.....)
ciao

cosa cambi ................
non ne sapevo niente quindi non saprei che dirti


di cpu, che tra l'altro nessuno fa' neanche +, in particolare per i K7
Non dovrebbe essere piu' o meno la stessa cosa?
Anzi, da profano, mi sembra che istruire il compilatore a organizzare
le istruzioni in codice macchina in modo da ottimizzarle per un certo
processore dovrebbe essere piu' difficile che fargli sostituire le
chiamate ad una subroutine scritta ad hoc con una chiamata ad una
istruzione 3dnow o SSE.
In tutto questo, un dubbio esistenziale mi arrovella: anni fa si
decantavano i RISC come velocissimi: era piu' veloce eseguire molte
istruzioni elementari che una sola istruzione su cui il processore si
attardava parecchio.
Ricordo infatti, ad esempio, che in assembler scrissi dei piccoli
segmenti di codice per il mio commodore 64, e in alcuni casi
risultavano piu' veloci che istruzioni ad hoc del buon vecchio 6510.
Il ricordo si fa sbiadito, ma la sostanza dovrebbe essere questa.
Con le MMX, 3dnow, SSE, si e' assistito ad un ritorno prepotente delle
funzioni precotte. Non succede anche in questo caso che un buon codice
assembler, sfruttando istruzioni veloci, burst, pipeline, e non so che
altro riesce ad essere piu' veloce delle implementazioni hardware dei
processori?





 processori?
manco per sogno.
Considerando poi che molte delle istruzioni presenti nelle unita' SIMD
(a parte quelle dedicate ai prodotti scalari o vettoriali) sono
realizzate
con algoritmi ricorsivi, e quindi e' praticamente impossibile ficcarli
in una pipeline, senza stallare la pipeline stessa.
(infatti mi chiedo come abbiano fatto con le fpus full pipelined del k7!
:)) )
ciao,
Marco 
*******************************************************************************
                              Marco  'nAo'  Salvi
                    Bologna University - Physics Department
 
mar...@cadvlsi1.df.unibo.it
******************************************************************************


DDT ha scritto:


--
_______________________________________________________________________________________
Per un po' di tempo non potro' seguire il gruppo
le risposte che mi darete giratele anche al mio indirizzo
ko...@libero.it
in modo che possa rispondere grazie.
_______________________________________________________________________________________

 processori?
assolutamente no. anche il miglior programmatore asm non potrebbe competere
con un buon codice scritto usando delle SIMD.
ciao

con un buon codice scritto usando delle SIMD.
Ok, recepito. :)


 piu' veloce. Forse pero' non e' un paragone calzante.
'spett', ho capito!! stai parlando degli ultimi 16k della mem in cui
venivano caricate le routine di accesso a basso livello del bios. in effetti
e' vero, per motivi di compatibilita' tali routine erano decisamente
"sovrabbondanti". tra l'altro se uno si riscriveva ad hoc le routine (magari
solo quelle che servivano)  si potevano liberare quei 16k (o erano 32....
mmmmhhhhh...... boh?!?) disponendo quindi di tutti i 64k (uao!!!) per il
codice e i dati
ciao

 codice e i dati
erano 20k :)
Cmq..venivano mappati sopra la ram..e per usare quella parte di ram era
necessario
pokare ad un certo indirizzo (che non era altro che una porta i/o) per
indirizzare
anche gli ultimi rimasugli di memoria.
ciao,
Marco
------
Posted via news://
freenews.netfront.net
Complaints to 
ne...@netfront.net