[Python] Pararelizzare due loop
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/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
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
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
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
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
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/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
> 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
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/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