|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Sep 2003
Città: San Mauro Torinese
Messaggi: 5402
|
[Linux] Compilare il client Seti
Dopo vari tentativi ( e dopo aver limato una parete
![]() Il problema ora, è che le prestazioni non sono esaltanti e ci sono poche differenze rispetto a quelle del client di default (setiathome_4.02_i686-pc-linux-gnu). Dove sbaglio? ![]() C'è qualcuno che puo' darmi qualche consiglio su come migliorare le cose? Nota: ho provato varie C flags... Esperimenti fatti su Debian 32. Il mio pc potete vederlo nel link in sign. Grazie... ![]() -------------------------- EDIT -------------------------- Il riassunto di questo thread lo trovi qui:
__________________
Suonare come superamento, anche se per pochi attimi, della realtà costrittiva, come espressione, comunicazione, con modalità proprie, agli altri; http://www.magazzinifranti.it/ Ultima modifica di wubby : 05-04-2005 alle 22:33. |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Dec 2004
Città: Urbino
Messaggi: 372
|
Re: [Linux] Compilare il client Seti
Ciao Wubby.
La documentazione l'hai gia' vista quindi non sto a fartela piu' lunga del necessario :-) In effetti mentre per Boinc, e quindi per i benchmarks, compilando con i flags opportuni si ottengono dei miglioramenti rilevanti, per il client seti non e' cosi' e a quanto pare non c'e' nessuno in giro disposto a preoccuparsene veramente. Preciso, prima di continuare, che ho dovuto compilare il client seti ormai da piu' di un anno, per farlo girare sulla piattaforma Alpha che non e' fra quelle supportate. Avevo anche compilato per pentium4 e pentium3 prima che uscissero i client di pperry, che sto usando adesso, e i risultati erano piu' o meno gli stessi. Dunque al momento non ci sono vantaggi a compilarsi il setiathome in proprio, tuttavia mi sembra strano che il tuo client non vada piu' o meno altrettanto male di quelli di pperry lol :-) Detto questo, andiamo avanti con qualcosa, magari, di piu' interessante. Ci sono al momento, che io sappia, due strade per ottimizzare veramente il client seti in modo che ne valga la pena, su Linux. Una strada e' quella di utilizzare le librerie delle fftw3. E', per inciso, la strada che hanno seguito Ghz e Vjoke per il client Windows. I sorgenti delle routine modificate per usare le fftw3 sono scaricabili, fra l'altro, da http://setiboinc.sourceforge.net/ I sorgenti cosi' modificati compilano tranquillissimamente e girano dal 30 al 50% piu' velocemente di quelli standard, dipende dalla piattaforma. Pero', maledizione, il tutto si incasina quando si tratta di riportare a Boinc il risultato della WU elaborata. Sono due mesi che, quando trovo il tempo, cerco di fare il debug dello scambio di informazioni tra Boinc e Setiathome senza venirne a capo ... quindi ... se qualcuno vuole sputare un po' il sangue ... avanti e speriamo con miglior fortuna :-) L'altra strada sono le routine ottimizzate a livello assembler da Benher & Korpela. Stesso sito di prima. Solo che in questo caso non si riesce a compilare un c...o e non ci sono le istruzioni minimali per fare tentativi seri. Prima o poi gli vado a chiedere, ai due fresconi, cosa hanno messo a fare in linea i sorgenti se non ci sono le indicazioni per usarli :-)) Anche in questo caso, se qualcuno di quelli che ne sanno piu' di me vuole dedicarci qualche nottata, avanti !!!!! Anche perche' le mie macchine sono al 50% Linux !!!! Chepalle vedere che macinano piu' WU i pc con XP !!!! Fra un mese mi arriva un server nuovo e non voglio neanche pensare che andra' piu' lento di Winzozz :-)) Aggiungo ... ho provato anche con Wine, ma si piantano i benchmarks, c'e' nessuno a cui funziona ??? Avevo in mente di aprire un thread su questa storia, approfitto del tuo :-) Paolo, at1839 Quote:
|
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Sep 2003
Città: San Mauro Torinese
Messaggi: 5402
|
Grazie per l'interesse...
![]() Io purtroppo ho solo una macchina, e se faccio prove e test non vado avanti con lo scaccolo. ![]() In ogni caso il mio prossimo obiettivo è quello di veder girare i due client ( il boinc compila, il seti no) su Debian64... ![]()
__________________
Suonare come superamento, anche se per pochi attimi, della realtà costrittiva, come espressione, comunicazione, con modalità proprie, agli altri; http://www.magazzinifranti.it/ |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Dec 2004
Città: Urbino
Messaggi: 372
|
Ovvio ... anche io, fatte le debite proporzioni, ho lo stesso problema. Infatti sto dedicando agli esperimenti una macchina "piccola" perche' su quelle grosse ovviamente gira il client che ... funziona. Pero' mi ci vogliono 9 ore per sapere se ho combinato qualcosa lol :-)
Ma alla fine dei conti, QUANTI siamo e CHI siamo, in HWU, con il Seti su Linux ?? C'e' qualcun altro interessato a fare esperimenti ?? Paolo, at1839 Quote:
|
|
![]() |
![]() |
![]() |
#5 | ||||
Senior Member
Iscritto dal: Aug 2004
Città: 7°38’E 45°07’N
Messaggi: 2300
|
Quote:
![]() ![]() Quote:
![]() Quote:
![]() Quote:
![]() ciao |
||||
![]() |
![]() |
![]() |
#6 | |
Senior Member
Iscritto dal: Dec 2004
Messaggi: 568
|
Quote:
Ciao, Luca.
__________________
1° Seti Emperor d'Italia |
|
![]() |
![]() |
![]() |
#7 | |
Senior Member
Iscritto dal: Dec 2004
Città: Urbino
Messaggi: 372
|
Quote:
![]() Comunque non ho perso le speranze di arrivare a mettere il ditino sul buco malefico, anzi ho l'impressione che l'apertura di questo thread porti fortuna. More later ![]() PS. Mi deve arrivare un dual xeon EM64 con 4 Gb di ram, su cui installero' RedHat AS |
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Sep 2003
Città: San Mauro Torinese
Messaggi: 5402
|
Aggiornamento
![]() Ieri sera ho compilato il client seti (4.07) con la solita procedura. Tempo di elaborazione di una WU 4.02 02:47 4.07 02:27 Apro anche una parentesi sul compilatore... ![]() Codice:
wubby@andromeda:~$ dpkg -l | grep gcc ii gcc-3.4 3.4.3-12 The GNU C compiler ii gcc-3.4-base 3.4.3-12 The GNU Compiler Collection (base package) ii libgcc1 3.4.3-12 GCC support library
__________________
Suonare come superamento, anche se per pochi attimi, della realtà costrittiva, come espressione, comunicazione, con modalità proprie, agli altri; http://www.magazzinifranti.it/ |
![]() |
![]() |
![]() |
#9 | |
Senior Member
Iscritto dal: Dec 2004
Città: Urbino
Messaggi: 372
|
Ciao Wubby.
Un piccolo miglioramento e' sempre meglio di niente :-)) Pero' .. hai fatto le prove con la STESSA WU ??, per esempio, quella di reference ?? Paolo, at1839 Quote:
|
|
![]() |
![]() |
![]() |
#10 | |
Senior Member
Iscritto dal: Sep 2003
Città: San Mauro Torinese
Messaggi: 5402
|
Quote:
![]() Per ora mi limito ai log di kboincspy... ![]() P.S. Devo trovare una macchina ( ![]() ![]()
__________________
Suonare come superamento, anche se per pochi attimi, della realtà costrittiva, come espressione, comunicazione, con modalità proprie, agli altri; http://www.magazzinifranti.it/ |
|
![]() |
![]() |
![]() |
#11 | |
Senior Member
Iscritto dal: Aug 2004
Città: 7°38’E 45°07’N
Messaggi: 2300
|
Quote:
ho differenze di un'ora nell'elaborazione di wu varie ![]() cmq .. non ti arrendere ![]() ![]() |
|
![]() |
![]() |
![]() |
#12 |
Senior Member
Iscritto dal: May 2002
Città: Patrie dal Friûl
Messaggi: 3779
|
Ciao!
Anche io avevo aperto un topic simile tempo fa, ma avevo desistito perchè a quanto pare non si riescono ad ottenere grandi miglioramenti ![]() Cmq tempo permettendo sarò felice di aiutarvi a spermientare! Ciao!
__________________
John Donuts |
![]() |
![]() |
![]() |
#13 | |
Senior Member
Iscritto dal: Dec 2004
Città: Urbino
Messaggi: 372
|
Ciao a tutti.
Quote:
![]() Sono riuscito, finalmente, a mettere a fuoco un problema, non e' detto che sia l'unico ma intanto .. ho un client ottimizzato per le fftw3 funzionante sul muletto. http://setiweb.ssl.berkeley.edu/resu...ultid=43501144 Continuo le verifiche, e ho sacrificato alla sperimentazione ANCHE un p4, state calmi la' dietro, ok ?? More later, e se le prospettive sono almeno decenti magari vi chiedero' di fare qualche test ![]() Vi risparmio i dettagli tecnici, a meno che non ci sia qualcuno seriamente interessato a fare il debug dei sorgenti. Paolo, at1839 |
|
![]() |
![]() |
![]() |
#14 |
Senior Member
Iscritto dal: Aug 2004
Città: 7°38’E 45°07’N
Messaggi: 2300
|
see you later ...
![]() |
![]() |
![]() |
![]() |
#15 | |||
Senior Member
Iscritto dal: Sep 2003
Città: San Mauro Torinese
Messaggi: 5402
|
Quote:
![]() ![]() ![]() Quote:
![]() Quote:
![]()
__________________
Suonare come superamento, anche se per pochi attimi, della realtà costrittiva, come espressione, comunicazione, con modalità proprie, agli altri; http://www.magazzinifranti.it/ |
|||
![]() |
![]() |
![]() |
#16 | |
Senior Member
Iscritto dal: Dec 2004
Città: Urbino
Messaggi: 372
|
Ciao a tutti.
Quote:
Il client seti passa gran parte del suo tempo a calcolare trasformate di Fourier. Non chiedetemi cosa sono, ho fatto il liceo Classico. Comunque il tedesco i cui sorgenti sto provando ha sostituito le routine originali con altre che utilizzano la libreria FFTW3. Ma nel farlo, apparentemente, si e' lasciato alle spalle un piccolo errore (tutti piccoli errori DOPO che li hai trovati) che riguardava la deallocazione di una zona di memoria che i sorgenti standard usavano, ma i suoi apparentemente no. Nel file seti.cpp if( analysis_state.data ) { // ma forse e gia stata liberata perche in realta e fftwf* fprintf(stderr, "seti.cpp - going for free1 \n"); // free_a(analysis_state.data); analysis_state.data = 0; fprintf(stderr, "seti.cpp - fake freed 1 \n"); } ho commentato l'istruzione e il programma ora porta a termine le elaborazioni. Prima, andava in abort per violazione di segmento di memoria. Il rimedio adottato e' brutale e deve essere sottoposto a verifica. Non sono infatti sicuro al 100% che la zona di memoria allocata e puntata da analysis_state.data sia effettivamente un residuo dei sorgenti standard. Al momento sembrerebbe cosi', ma devo fare ulteriori test. Intanto, se qualcuno se la sente di andare al massacro, posso fornire supporto per la compilazione :-) Altro obiettivo ... probabilmente per avvicinarsi ai tempi di elaborazione di Windows, bisognera' compilare con ICC invece che con GCC. Quando saremo sicuri che l'errore e' corretto andro' avanti anche su questa strada (se ci riesco ???) A presto. Paolo, at1839 |
|
![]() |
![]() |
![]() |
#17 | |||
Senior Member
Iscritto dal: Sep 2003
Città: San Mauro Torinese
Messaggi: 5402
|
Quote:
La mia "terza media" non credo sia molto d'aiuto... Posso pero' mettere "tempo&passione". ![]() Quote:
![]() Quote:
Uff ![]() Per quanto riguarda i miei test su debian pure64 ho il client seti (compilato con gcc3.4) che non appena elabora una WU mi ritorna errore. Ho provato anche a compilare con il gcc 4.0 ma la compilazione restituisce quasi subito errore. Grazie per le info.
__________________
Suonare come superamento, anche se per pochi attimi, della realtà costrittiva, come espressione, comunicazione, con modalità proprie, agli altri; http://www.magazzinifranti.it/ |
|||
![]() |
![]() |
![]() |
#18 | |
Senior Member
Iscritto dal: Dec 2004
Città: Urbino
Messaggi: 372
|
Ciao a tutti.
Quote:
Allora ... per tutti quelli eventualmente interessati :-) Prima di tutto bisogna avere in piedi un sistema di sviluppo in grado di compilare sia Boinc che Seti secondo le istruzioni riportate in http://www.pperry.f2s.com/boinc-compile-seti.htm NON chiedetemi come si fa ... altrimenti non ne usciamo piu' lol A questo punto installate le librerie fftw3. Se il sistema e' Debian, apt-get install fftw3 fftw3-dev. Per la RedHat, esisterebbero le rpm ma mi risulta che non contengono la versione "fast", cioe' manca la libreria fftw3f. Quindi occorre compilare le fftw3 comfigurate --enable-float. Si veda la documentazione in http://www.fftw.org/fftw3_doc/Instal...lation-on-Unix Scaricate i sorgenti da http://setiathome.berkeley.edu/~ehei...w3_code.tar.gz sono solo 6 files e vanno sostituiti dentro seti_boinc/client !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! CORREGGETE il file seti.cpp commentando la linea // free_a(analysis_state.data); sto cercando di verificare che non rimanga memoria vagante in giro ... vi faro' sapere !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! lanciate il configure con le CFLAGS appropriate, ma tassativamente il livello di ottimizzazione deve essere 02 e NON 03 come era per il Boinc. A questo punto bisogna aggiungere nel client/Makefile la libreria delle fftw3f. Ci sono mille modi per farlo, uno e' questo: LIBS = -L. \ -looura \ -lfftw3f make ... e buona fortuna. ![]() ![]() ![]() ![]() ![]() Aaaaaaaa Prrrrresssstoooo, Paolo, at1839 |
|
![]() |
![]() |
![]() |
#19 | |
Senior Member
Iscritto dal: Sep 2003
Città: San Mauro Torinese
Messaggi: 5402
|
Quote:
![]() Grazie ![]()
__________________
Suonare come superamento, anche se per pochi attimi, della realtà costrittiva, come espressione, comunicazione, con modalità proprie, agli altri; http://www.magazzinifranti.it/ |
|
![]() |
![]() |
![]() |
#20 | ||
Senior Member
Iscritto dal: Sep 2003
Città: San Mauro Torinese
Messaggi: 5402
|
Quote:
![]() Quote:
Codice:
/usr/bin/ld: cannot find -looura ![]() Dove sbaglio? ![]()
__________________
Suonare come superamento, anche se per pochi attimi, della realtà costrittiva, come espressione, comunicazione, con modalità proprie, agli altri; http://www.magazzinifranti.it/ |
||
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:37.