Newsgroup: it.comp.hardware.cpu
Titolo: Complessità di un algoritmo

Devo valutare la complessità di alcuni algoritmi per elaborazione di segnali
piuttosto pesanti e confrontarne le prestazioni su vari tipi di hardware.
Per questo sto cercando un sito che indica esattamente quanti cicli di clock
sono richiesti dai vari processori (sia Intel/AMD sia PowerPC/G4/G5) per
eseguire ogni tipo di operazione aritmetica floating-point. Ho fatto varie
ricerche ma ho trovato solo indicazioni di massima sulle quattro operazioni,
mentre gli algoritmi in questione comprendono anche radici e funzioni
trigonometriche. Lo so che ci sono molti altri fattori che determinano le
prestazioni (accessi alla memoria, salti, ecc.) ma penso siano molto più
difficili da valutare.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 difficili da valutare.
I manuali intel, AMD e Motorola dovrebbero specificare
esattamente quello che cerchi.
Di solito sono disponibili sui loro siti.
In generale, pero`, ti informo che e` un'impresa ardua,
dato che dipende fortemente dallo stato della cache.
Cioe` se un'istruzione e` in cache o meno ti cambia tutto,
tanto per fare un esempio.
Lo stesso per i dati, anche se qui la cosa puo` essere
controllata meglio.
Riguardo all'uso di trigonometriche, anche qui dipende da
cosa cerchi esattamente.
In alcuni casi un LUT puo` essere sufficiente, il che cambia
completamente il calcolo dei cicli.
bye,
-- 
   Piergiorgio Sartor


Ma ci sono istruzioni per fare radici e funzioni trigonometriche?

 Ma ci sono istruzioni per fare radici e funzioni trigonometriche?
fsin, fcos, fsqrt, ftan... non ti dicono niente? =)
-- 
ColdShine
"L'esperienza è un'insegnante severa: prima ci esamina e solo dopo ci fa
  lezione." - legge di Vernon Sanders
Athlon XP 2000+ @ Barton/1810 MHz/1,275V ||| R9500 @ 9700 378/324 MHz |||
Jetway N2PAP-Ultra ||| 512 MB PC2100 @ 181 MHz/2,7V/2,5-3-3-11
http://coldshine.altervista.org/comp/
 in allestimento =)

 fsin, fcos, fsqrt, ftan... non ti dicono niente? =)
Ah giusto, non stavo guardando le funzioni FPU    :)

 trigonometriche?
Nei processori RISC penso che non ci siano, ma nei processori Intel/AMD sě,
anche se implementate con microcodice (almeno cosě mi hanno insegnato...).


 Nei processori RISC penso che non ci siano...
Mhh... sono un pò scettico a riguardo.
Tra l'altro ormai anche le cpu CISC lo sono solo di "facciata"...
Ciao

 Tra l'altro ormai anche le cpu CISC lo sono solo di "facciata"...
Vabbe`, ma quello e` il programming model, indipendentemente
da come e` poi realizzato sotto, quindi il programmatore vede
il CISC, mica e` in grado (purtroppo) di usare il RISC o VLIW
che c'e` sotto.
bye,
-- 
piergiorgio


Si lo so questo... ma credo che sia possibile eseguire calcoli
trigonometrici anche con delle cpu totalmente RISC.
Saluti

 trigonometrici anche con delle cpu totalmente RISC.
Beh, diciamo che qui e` solo una  questione di definizioni... :-)
Cioe` _per definizione_ un RISC non dovrebbe avere istruzioni
complesse, d'altronde nulla, a parte questo, impedisce che
le abbia.
Spesso sono anche "false" istruzioni, quindi la confusione e`
piu` che totale...
bye,
-- 
piergiorgio

 piu` che totale...
Cioe?
-- 
Tnk
Luca "Kleidemos" Francesca
Un computer a un altro quando si incontrano:
"Ciao, come ti boota oggi???"

 Cioe?
Cioe` si usa un "trap", ovvero, ad es., l'istruzione "fsin"
non esiste in assembly, ma genera, quando si incontra, un
interrupt che salta ad un routine che calcola "sin".
Ovviamente serve del SW da qualche parte, quindi un "driver",
per quel set di istruzioni.
bye,
-- 
piergiorgio