[Python] Pararelizzare due loop

2012-01-05 Per discussione Matteo Boscolo

ciao a tutti,
ho questa funzioncina dentro una classe .

vorrei qualche suggerimento su come parallelizzare i due cicli in modo 
da rendere più efficiente e veloce questa funzione ..


le dimensioni del r.parameters e r.functions sono differenti ..

grazie mille

ciao,
Matteo

 def _updateSolver(self,r):
"""
internal function for solver updating
"""
for p in r.parameters.values():
self._ruleSolver.addParameter(p.name, p.value)
for f in r.functions.values():
self._ruleSolver.addFunction(f.name, f.value)
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Pararelizzare due loop

2012-01-05 Per discussione Andrea Francia
2012/1/5 Matteo Boscolo 

> ciao a tutti,
> ho questa funzioncina dentro una classe .
>
> vorrei qualche suggerimento su come parallelizzare i due cicli in modo da
> rendere più efficiente e veloce questa funzione ..
>

Scusa se ti faccio una contro-domanda.

Come mai vuoi ottimizzare questa funzione? Hai problemi di performance?
Hai gia' verificato dove si trova il collo di bottiglia?

Te lo chiedo perche' a giudicare dal nome dei metodi non sembrano
operazioni molto onerose.

Ciao
-- 
Andrea Francia http://www.andreafrancia.it
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Pararelizzare due loop

2012-01-05 Per discussione Matteo Boscolo

Il 05/01/2012 17:08, Andrea Francia ha scritto:


Scusa se ti faccio una contro-domanda.

Come mai vuoi ottimizzare questa funzione? Hai problemi di performance?
attualmente no.. ma vorrei ottimizzare al meglio questo processo perché 
potrebbe frullare un bel po

Hai gia' verificato dove si trova il collo di bottiglia?

Te lo chiedo perche' a giudicare dal nome dei metodi non sembrano 
operazioni molto onerose.


non sono cose onerose ma potrebbero essere tante .. quindi se riesco a 
pararelizzare la cosa e' meglio


Grazie mille
Matteo

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Pararelizzare due loop

2012-01-05 Per discussione Giovanni Porcari

Il giorno 05/gen/2012, alle ore 15:56, Matteo Boscolo ha scritto:

> vorrei qualche suggerimento su come parallelizzare i due cicli in modo da 
> rendere più efficiente e veloce questa funzione ..

Ma sei sicuro che alla fine sia più 'efficiente e veloce' ?
Cioè, cosa ti dà la certezza che non sia il contrario ?


G
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Pararelizzare due loop

2012-01-05 Per discussione Matteo Boscolo

Il 05/01/2012 17:48, Giovanni Porcari ha scritto:

Il giorno 05/gen/2012, alle ore 15:56, Matteo Boscolo ha scritto:


vorrei qualche suggerimento su come parallelizzare i due cicli in modo da 
rendere più efficiente e veloce questa funzione ..

Ma sei sicuro che alla fine sia più 'efficiente e veloce' ?
Cioè, cosa ti dà la certezza che non sia il contrario ?


G
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python



Supponi di avere due liste da 1.000.000 di elementi ..
ciclo per un milione
e poi per un altro milione

se pararelellizzo  dovrei se non dimezzare almeno ridurre il tempo di 
esecuzione .. che dite ??

Tenete presente che giro so w$

ciao
Matteo



___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Pararelizzare due loop

2012-01-05 Per discussione Marco De Paoli
condivido i dubbi degli altri sul fatto che i thread non siano un grande
aiuto nel tuo caso
ad ogni modo segnalo questo
http://eli.thegreenplace.net/2011/12/27/python-threads-communication-and-stopping/
mi sembra ben fatto

Marco
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Pararelizzare due loop

2012-01-05 Per discussione Giovanni Porcari

Il giorno 05/gen/2012, alle ore 18:00, Matteo Boscolo ha scritto:

> Supponi di avere due liste da 1.000.000 di elementi ..
> ciclo per un milione
> e poi per un altro milione
> 
> se pararelellizzo  dovrei se non dimezzare almeno ridurre il tempo di 
> esecuzione .. che dite ??
> Tenete presente che giro so w$


Supponi di avere due pile di piatti da lavare da 1.000 piatti ciascuna uno 
sguattero
e un lavello. Se lava 1 piatto al secondo in 2000 secondi ha finito.
Poi immagina di avere due sguatteri ma sempre un solo lavello.

Quanto scommetti che il tempo finale è maggiore di 2000 secondi ?

;)

G



___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Pararelizzare due loop

2012-01-05 Per discussione Marco Beri
2012/1/5 Giovanni Porcari 

> Supponi di avere due pile di piatti da lavare da 1.000 piatti ciascuna uno
> sguattero
> e un lavello. Se lava 1 piatto al secondo in 2000 secondi ha finito.
> Poi immagina di avere due sguatteri ma sempre un solo lavello.
> Quanto scommetti che il tempo finale è maggiore di 2000 secondi ?
>

Sarà anche come dici, ma io sono sicuro che se prendi 9 mamme un bambino
viene fuori in un mese...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


[Python] PHP critique e somma con caratteri

2012-01-05 Per discussione Alessandro Dentella
> Scusami ma a fronte di:
> 
> php > print '3viso'+2;
> 5


riprendo questo thread solo perché sono appena incappato in questo pezzo di
codice di awk:

  $ echo -e "70.00ms\n130.00ms"|awk '{tot+=$NF} END {print tot/NR}'
  100

che suggerisce che quanto sopra riportato potrebbe essere scritto così:

  $ echo 3visio 2|awk '{print $1 + $2}'
  5

Va da sè che nessuno ha mai pensato sdi scrivere un sito in awk...


sandro
*:-)

PS: ci sono incappato in quanto l'ho scritto al volo per analizzare dei log,
nel momento in cui ho notato che dovevo strippare ms, mi sono accorto
che non serviva...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Pararelizzare due loop

2012-01-05 Per discussione Giovanni Porcari

Il giorno 05/gen/2012, alle ore 19:11, Marco Beri ha scritto:

> Sarà anche come dici, ma io sono sicuro che se prendi 9 mamme un bambino 
> viene fuori in un mese...

Si ma ci vogliono anche 9 papà ?

Perchè in tal caso la mamma si diverte di più ;)

G
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Pararelizzare due loop

2012-01-05 Per discussione Andrea Francia
2012/1/5 Matteo Boscolo 

> Supponi di avere due liste da 1.000.000 di elementi ..
> ciclo per un milione
> e poi per un altro milione
>
> se pararelellizzo  dovrei se non dimezzare almeno ridurre il tempo di
> esecuzione .. che dite ??


1) Che e' molto facile rallentare il codice nel tentativo di velocizzarlo
con le micro-ottimizzazioni.
2) Che e' piu' facile ottimizzare quando il codice e leggibile e che le
micro-ottimizzazioni rendeno il codice poco leggibile.
3) Che ha volte ha molto senso parallelizzare tasks che fanno tanto I/O.
4) Che solo proprio in alcuni casi il tempo della macchina e' piu' prezioso
di quello del programmatore.
5) Che in genere il programma passa la maggior parte del tempo in una
piccola parte di codice. Le misure sono essenziali per trovarla.
6) Spesso c'e' sempre tempo per ottimizzare piu' tardi.

Ciao
-- 
Andrea Francia http://www.andreafrancia.it
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python