Newsgroup: it.comp.macintosh
Titolo: rallentamento con Python

Allora problemi:
1. la cartella
/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-pac
kages
non e` nel path dei moduli di Python, anche se il Package Manager ci
installa della roba. Mi pareva che una volta ci fosse...
Comunque poco male, posso aggiungerla a sys.path ... tuttavia c'e` un
modo per fargliela mettere dentro di default (intendo dire lasciando
stare lo script di avvio nella home, e metterla systemwide)?
2. molto piu` grave...
fino a poco tempo fa Python + QT era una scheggia. Si caricava perfino
piu` velocemente dell'analogo programma con le QT in C++...
ora la *velocita`* del programma non e` minimamente cambiata, ma solo a
caricare (import qt o from qt import * non fa differenza come velocita`)
ci mette un tempo nell'ordine dei secondi. Prima era istantaneo e
tutt'ora lo e` su GNU/Linux.
Ovviamente questo rallenta moltissimo :)
le librerie di pyqt sono messe qui
/Library/Python/2.3
nella stessa cartella ci sono anche le wx. che pure sono la seconda cosa
piu` lenta a caricarsi.
Tale dir non e` nel path, pero` evidentemente la trova lo stesso... ma
da l'idea che cerchi ovunque prima che li (e` l'unico modo in cui mi
spiego il rallentamento, visto che non ho cambiato nulla nella
configurazione, non ho ricompilato nulla, non ho spostato altre
librerie).
Il primo rallentamento si e` verificato mentre stavo facendo il make
check di autoconf-2.59.
Subito ho pensato fosse dovuto al fatto che il processore fosse
moltissimo imballato. Invece non e` cosi`. E` lento a caricarsi anche a
processore totalmente scarico, impegna totalmente il processore e fa
anche partire la ventola (e insomma... mi sembra eccessivo).
Ho pensato a cosa posso avere fatto che ha modificato qualche
configurazione...
ho installato il gcc-3.4, ma e` in /usr/local, ed e` chiamato gcc-3.4
Non vedo ragione poi perche` installare un'altro compilatore dovrebbe
dare problemi sul caricamento di librerie...
L'altra cosa che ho fatto e` poi per dare precedenza all'autoconf mio
invece che a quello di sistema di mettere /usr/local/bin nel path prima
di /usr/bin. Ma anche questo non vedo come potrebbe interferire.
Inoltre 'rimettendolo' a posto, la velocita` non cambia.
L'altra cosa che ho installato sono i Developer's Tool nuova versione, e
ho pensato che potrebbero avere scasinato loro... ma mi chiedo come (io
a loro imputavo eventualmente il fatto di avere levato
/Library/Frameworks etc dal path dei moduli python).
Ora... questi nuovi dev tools, non mi pareva toccassero il Python...
perche` deve essere piu` lento all'avvio (e poi funzionare perfettamente
senza rallentamenti?)
Vorrei evitare di ricompilarmi tutto per vedere se funziona...
e piuttosto mi chiedevo se qualcuno ha idea di quella che puo` essere la
causa...
-- 
Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are,
by definition, not smart enough to debug it.
    - Brian W. Kernighan

 causa...
Il caricamento dinamico.  Con tante variabili d'ambiente dyld e`
carinissimo, ti racconta anche di che colore ha le mutandine la
fidanzata dell'autore di una libreria... ah no, DYLD_PANTY_COLOR l'hanno
tolto, vabbe`, comunque di opzioni ne restano parecchie, vedi un po'...
Alex

 tolto, vabbe`, comunque di opzioni ne restano parecchie, vedi un po'...
lol :)
beh, colgo la palla al balzo... sono uscite le nuove QT per mac... tanto
me le sarei dovute ricompilare...
ricompilo loro e tutto il resto :)


 ricompilo loro e tutto il resto :)
OK, ma prima di mettertici pulisci il pulibile, che ho l'impressione che
le tracce del passato ti complichino la vita!
Alex

 le tracce del passato ti complichino la vita!
ovvero:
Dome:/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python
2.3 $ ls -lh
total 19480
[...]
lrwxr-xr-x    1 root  wheel     42B  1 Apr  1976 site-packages ->
../../../../../../../../Library/Python/2.3
[...]
io sto pensando di eliminare il link simbolico e di sbatterci dentro la
cartella vera con il nome site-packages.
dici che funge?
comunque non ho idea di come fare a pulire le 'tracce del passato'.
Prima Python non lo avevo toccato... 
mi seccherebbe formattare e reinstallare....


 
A me puzza un po' di fink in effetti ai tempi del Jaguaro anche a me
c'era qualcuno che mi aveva messo python in quella directory ma non
ricordo con esattezza, mi sembra appunto fink.
Se ti puo' consolare a me per avviare una libreria Qt ci ha sempre messo
parecchio tempo, ora va meglio dopo che ho ricompilato ma ci mette
comunque un po' di tempo, wx e' infinitamete piu' veloce.... mah
-- 
Ciao
Fabio

>> Timer('import qt').timeit()
15.36061692237854
direi abbastanza eccessivo ;)


 mi seccherebbe formattare e reinstallare....
Mah, se non sbaglio hai avuto fink, poi darwin ports, poi non so cosa
hai tolto e rimesso, insomma e` una macchina vissuta.  Thomas Jefferson
diceva che ci voleva una rivoluzione ogni vent'anni e forse esagerava un
po', ma forse l'equivalente su di un disco di sistema di un computer ben
vissuto (cioe` col livello di churning che fai tu) non e` una brutta
idea...
Alex

 idea...
lol :)


>> 
e nota che sono migliorate le qt ... (wx mi e' sembrato piu' lento del
solito invece)
-- 
Ciao
Fabio

 Questione di abitudine :-)
lo trovo seccante...


 lo trovo seccante...
quoto soprattutto perche' con il Python risparmi i tempi di
compilazione, dovrebbe partire tutto subito e ... passano 2h per
caricare le librerie. Solo che non sono riuscito a evitare la cosa, il
mio Hw sente ormai lo scorrere del tempo.
-- 
Ciao
Fabio

 mio Hw sente ormai lo scorrere del tempo.
macche`... hai un problema tipo il mio.
che e`, esattamente come ha detto Alex un problema di Prebinding.
L'installazione del compilatore mi aveva sbarellato tutto.
prova a farle statiche, poi mi sai dire :)



-- 
nif from outer space

 prova a farle statiche, poi mi sai dire :)
Ok il mio mac ha trovato cosa fare mentre studio questo pomeriggio
-- 
Ciao
Fabio

 prova a farle statiche, poi mi sai dire :)
Appena fatto, ho ricompilato qt con flag -static, idem ho compilato PyQt
con flag -k e ricronometrando il tempo per un import qt non e' molto
migliorato, son passato da 16 sec a 15 ...
Pero' trovo che il timer porti via molto infatti senza il timer ci mette
sicuramente un bel pezzetto in meno a caricarsi.
-- 
Ciao
Fabio

 wrote:

infatti ho provato a fare 2 file .py in cui c'e' solo il comando import
wx (qt) e poi li ho lanciati con time questi i risultati :
G4:~/Desktop wezzy$ time python testwx.py 
real    0m2.563s
user    0m2.350s
sys     0m0.210s
G4:~/Desktop wezzy$ time python testqt.py 
real    0m4.896s
user    0m4.750s
sys     0m0.140s
mi sembrava che ci mettessero una vita dentro Timer()!
-- 
Ciao
Fabio

 Ok il mio mac ha trovato cosa fare mentre studio questo pomeriggio
il mio sta corteggiando una stampante...


 sicuramente un bel pezzetto in meno a caricarsi.
vero... adesso e` quasi istantaneo, e con il timer ci mette 9 secondi...



ty... cmq avevo gia` fatto quelle li... 
non c'e` altro, meglio :)


 mi sembrava che ci mettessero una vita dentro Timer()!
vero... ma con le vecchie QT, i tempi di Timer non si discostavano da
quelli presi con l'orologio :)


 una volta qui era piu` veloce :)
adesso:
Dome:~ $ time python -c 'import qt'
real    0m2.523s
user    0m1.330s
sys     0m0.130s
