<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">2013/12/19 Pietro Battiston <span dir="ltr"><<a href="mailto:me@pietrobattiston.it" target="_blank">me@pietrobattiston.it</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div><div class="h5"><br>
> Si, ma non guardare le lucine… usa dtrace/kprobes/systemtap, quello<br>
> che va di moda ora sul tuo os.<br>
<br>
<br>
</div></div>Mi dirai tu se posso considerarmi abbastanza à la page, ma prima di<br>
chiedere un consiglio in lista ho ovviamente fatto vari controlli con<br>
iotop - ad esempio verificando che, nel parsing di 150 MB di json,<br></blockquote><div><br></div><div>Insisto, secondo me uno strumento più potente come dtrace potrebbe aiutarti,</div><div>perche' ti da una visione unificata su quello che sta succedendo. Puoi prendere</div>

<div>il tuo processo e sondare "insieme" cosa sta succedendo, con estrema precisione.</div><div><br></div><div>Non e' particolarmente semplice… io mi ci perdo sempre in mezzo (e poi ora ho solo macchine pingiate, salvo il laptop, su cui non sviluppo).</div>

<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
- la prima iterazione _è_ effettivamente più lenta, ma la differenza è<br>
inferiore al 5%, mentre quello che sto cercando di identificare è una<br>
perdita di efficienza del 30%.<br></blockquote><div><br></div><div>Che disco hai?</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Ciò detto, non avevo neanche menzionato questi test perché - ribadisco -<br>
se il bottleneck fosse il disco - per latenza o per banda - si vedrebbe<br>
_a maggior ragione_ nell'operazione di puro parsing del json _senza_<br>
caricamento in redis. Invece in quel caso la CPU sta fissa sopra il 99%.<br></blockquote><div><br></div><div>Io credo che ci possa essere relazione a come e' scritto il codice.</div><div>Noi abbiamo avuto problemi, per esempio, su una cosa simile. </div>

<div>Lettura di un grosso file, che finiva in pancia a pandas, *con* il parsing delle date abilitato.</div><div>Il tutto abbastanza sequenziale, e la cosa non e' che andasse bene. </div><div>Poi abbiamo tirato un po' di martellate a tutto e abbiamo risolto, ma abbiamo appunto disabilitato il parsing delle date (che non serviva ed era un carico troppo alto) *e* parallelizzando la lettura e la scrittura su più' processi. Ma il problema era diverso, noi si avevano più' files e venivano da rete.</div>

<div> </div></div>-- <br> .<br>..: -enrico-
</div></div>