|
|
|
![]() |
|
Strumenti |
![]() |
#21 |
Senior Member
Iscritto dal: Sep 2000
Città: lodi-crema-milano.
Messaggi: 12335
|
sembrano più congruenti?
![]() da quel test sembra che un p4 1.8 mobile è 5 volte più veloce di un g4 1.67 e 10 volte più veloce di un xp1400........
__________________
La teoria è quando si sa tutto e niente funziona. La pratica è quando tutto funziona e nessuno sa il perché. Noi abbiamo messo insieme la teoria e la pratica: non c'è niente che funzioni... e nessuno sa il perché! |
![]() |
![]() |
![]() |
#22 |
Senior Member
Iscritto dal: Aug 2004
Messaggi: 1399
|
Non è un P4 mobile è un Pentium-M (centrino) che appunto dovrebbe andare come un 3.0 Ghz.
E' vero tuttavia che i valori su G4 sono bassi.
__________________
If you eat a live frog in the morning, nothing worse will happen to either of you for the rest of the day. |
![]() |
![]() |
![]() |
#23 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
I benchmark sintetici non servono a nulla: vanno testate le applicazioni reali (FFT -> JPEG, Wavelet -> JPEG2000, Noise generator -> Filtro audio o video, ecc.).
Comunque ecco i risultati ottenuti su un Athlon64 3000+ (2Ghz) su Linux Red Hat Fedora Core 2 per x86-64. Compilando il sorgente senza alcuna ottimizzazione (g++ crossMark.cpp), per x86 a 32 bit: Codice:
testing wavelet transform... 2.33 sec. testing fourier transform... 110.4 sec. testing noise generation... 0.97 sec. average computation time... 37.9 sec. performance score: 5.27704 Codice:
testing wavelet transform... 0.98 sec. testing fourier transform... 39.09 sec. testing noise generation... 1.02 sec. average computation time... 13.6967 sec. performance score: 14.6021 Codice:
testing wavelet transform... 2.28 sec. testing fourier transform... 78.19 sec. testing noise generation... 1.05 sec. average computation time... 27.1733 sec. performance score: 7.36016 Codice:
testing wavelet transform... 1 sec. testing fourier transform... 38.97 sec. testing noise generation... 1 sec. average computation time... 13.6567 sec. performance score: 14.6449
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#24 | |||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Ho notato che fai ampio uso di double nel codice: come mai? I dati sono single e non double... Quote:
![]() Quote:
![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|||
![]() |
![]() |
![]() |
#25 |
Member
Iscritto dal: Nov 2004
Messaggi: 169
|
Esimii programmatori, illuminatemi, cos'e' un FFT (ma anche un wavelet, che dal nome sempra una applet di quelle inutili che sit engono sul desktop^^)??
Grazie mille. Saluti
__________________
"Gli intelletti mediocri condannano di solito tutto ciò che oltrepassa la loro portata." La Rochefoucauld PIV 2.8c, 2*512Mb Kingstone HyperX, Abit IC7-Max3, Sapphire 9800XT, 2*WD Raptor 36Gb Striped Raid, WD Caviar 160Gb, LiteOn 1653, Enermax Noisetaker 475 ---------- iBook 12" G3 800 d00ped, 128+512Mb Ram, Hitachi Travelstar 7k60, osx 1.3.8 ---------- iPod Shuffle 1Gb |
![]() |
![]() |
![]() |
#26 |
Senior Member
Iscritto dal: Jul 2000
Messaggi: 2574
|
Devo copiare i valori dalla finestra a mano per inserirli qui ?
__________________
---- noivelocisti.net ---- |
![]() |
![]() |
![]() |
#27 |
Senior Member
Iscritto dal: Jan 2001
Città: taranto
Messaggi: 2769
|
Uhm...allora o cancello la vecchia discussione, oppure le unisco per dare una sequenza logica...
Cecilia scegli. Myname
__________________
La "Convinzione" è un lusso che si può permettere solo colui che non è coinvolto... Think Different MacBook Nero |
![]() |
![]() |
![]() |
#28 |
Member
Iscritto dal: Jun 2003
Messaggi: 295
|
Il tuo bench test da risultati scarsi sul G4, nel test della trasformata di fourier, perchè in questi tipi di calcolo generalmente viene usata Altivec.
Il G4 nel calcolo FP puro va meno bene a causa dell'unica unità FP presente. Nei test di distributed.NET ottimizzati per Altivec un G4 a 800 Mhz rivaleggia con un P4 a 2.3 Ghz... |
![]() |
![]() |
![]() |
#29 | |
Senior Member
Iscritto dal: Sep 2000
Città: lodi-crema-milano.
Messaggi: 12335
|
Quote:
non esiste il p4 2.3..... come hanno fatto a compararlo a un g4 800? ![]()
__________________
La teoria è quando si sa tutto e niente funziona. La pratica è quando tutto funziona e nessuno sa il perché. Noi abbiamo messo insieme la teoria e la pratica: non c'è niente che funzioni... e nessuno sa il perché! |
|
![]() |
![]() |
![]() |
#30 | |
Member
Iscritto dal: Jun 2003
Messaggi: 295
|
Quote:
![]() Links: http://n0cgi.distributed.net/speed/q...&contest=rc572 http://n0cgi.distributed.net/speed/q...&contest=rc572 |
|
![]() |
![]() |
![]() |
#31 |
Senior Member
Iscritto dal: Jan 2001
Città: taranto
Messaggi: 2769
|
Ok unisco nella nuova discussione...
Myname
__________________
La "Convinzione" è un lusso che si può permettere solo colui che non è coinvolto... Think Different MacBook Nero |
![]() |
![]() |
![]() |
#32 |
Senior Member
Iscritto dal: Aug 2004
Messaggi: 1399
|
Grazie Myname,
scusa se non ti rispondo ma ho la febbre e sono a letto. 1. Ho eliminato il valore della cpu freq perchè creava molta confusione. Basta creare una scala con lo score ottenuto. 2. In ogni caso l'FFT è troppo problematica. Domani rilascierò una versione senza FFT. 3. FFT e wavelet sono delle trasformate per portare dei dati da un dominio ad un altro. Si usano anche nell'MP3 e nella compressione JPEG. 4. Nella prossima versione salverò i dati in un file, ok? Grazie a tutti, C.
__________________
If you eat a live frog in the morning, nothing worse will happen to either of you for the rest of the day. |
![]() |
![]() |
![]() |
#33 | ||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Quote:
Questo thread è stato aperto su alcuni SPECIFICI algoritmi: atteniamoci a questi.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
||
![]() |
![]() |
![]() |
#34 | |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
![]() Personalmente farei un paio di cose: 1) eliminerei il C++ come linguaggio, che per lo scopo del progetto è ridondante: meglio usare il C, visto che l'obiettivo è quello di testare degli algoritmi "classici". Questo permetterà di focalizzare l'attenzione su alcuni dettagli implementativi; 2) cercherei in qualche testo di analisi numerica o calcolo numerico un'implementazione più efficiente di quella che hai usato. Poi, avendo tempo, potresti inserire anche qualche test con la DCT, visto che attualmente è la trasformata più usata (dal JPEG all'MPEG4, ecc.). ![]() Anche di questa ne esistono diverse implementazioni (ce n'è una che sacrifica un po' la precisione, ma utilizza 11 moltiplicazioni anziché le canoniche 12, ad esempio). Per le wavelet: ce ne sono centinaia ![]() In generale: FFT, Wavelet, DCT, noise generator, ecc. si possono implementare non solo coi float (e in questo sarebbe preferibile adottare soluzioni che utilizzano solamente la precisione singola o quella doppia, senza "mischiare" i due tipi di dati), ma anche con aritmetica intera fixed point. Fermo restando che, a mio avviso, questo tipo di benchmark non serve a nulla se non inserito in un contesto specifico.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|
![]() |
![]() |
![]() |
#35 |
Senior Member
Iscritto dal: Aug 2004
Messaggi: 1399
|
Grazie per i suggerimenti.
L'implementazione che hai visto è la seconda: la prima era sicuramente più efficiente ma dava risultati mostruosamente diversi tra G4 e Pentium-M. Ho usato tanti testi di analisi numerica per l'implementazione; in ogni caso entrambe sono codice già usato commercialmente. Il riferimento è comunque Numerical recipes in C. Se in ogni caso hai una implementazione migliore sarei felice di usarla. Per quanto riguarda la DCT: non possiedo una implementazione; mi indichi un posto dove scaricarla. Il C++ qui è usato solo per l'estensione del file ![]() Ho scelto di usare float e non aritmetica intera proprio per vedere come rispondono i processori con questo tipo di calcolo. Grazie ancora, C.
__________________
If you eat a live frog in the morning, nothing worse will happen to either of you for the rest of the day. |
![]() |
![]() |
![]() |
#36 | ||||||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Quote:
![]() Se sei ancora studente all'università, puoi controllare in biblioteca i test esistenti a riguardo, e le riviste scientifiche disponibili (ACM e IEEE su tutte: sono un'autentica miniera! ![]() Quote:
![]() Per la versione "generale" (n dati anziché sempre e soltanto 8), dovresti consultare le fonti di cui sopra. Quote:
![]() Quote:
![]() Anzi, potresti dichiarare con un typedef il tipo di dato da usare, così da rendere semplice la compilazione e i test con l'uno o l'altro tipo di dato. Quote:
Ciao
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
||||||
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:28.