Il giorno mer, 18/12/2013 alle 16.53 +0000, enrico franchi ha scritto: > > > > 2013/12/18 Pietro Battiston <m...@pietrobattiston.it> > > > OK, allora preciso: sono (ragionevolmente) certo che il > bottleneck non > sia il disco, neanche per motivi di latenza, non solo perché > il LED del > disco si illumina sporadicamente, ma soprattutto perché > l'operazione di > decodifica dello stesso identico json _senza_ popolarne il > database > redis - e quindi _più_ disk intensive - utilizza la CPU al > 100%, come mi > aspetterei. Quindi mi verrebbe da dire che l'eventuale > problema di > latenza è legato unicamente all'utilizzo di Redis. > > > Si, ma non guardare le lucine… usa dtrace/kprobes/systemtap, quello > che va di moda ora sul tuo os.
Mi dirai tu se posso considerarmi abbastanza à la page, ma prima di chiedere un consiglio in lista ho ovviamente fatto vari controlli con iotop - ad esempio verificando che, nel parsing di 150 MB di json, - durante la prima iterazione, fatta partire dopo un "/sbin/sysctl vm.drop_caches=3", l'utilizzo del disco è sempre sotto il 15% (d'accordo, questo non mi dice nulla sulla latenza), - durante le successive iterazioni, come prevedibile, il disco non viene _affatto_ utilizzato, dato che il json è nella cache di sistema - eppure il fenomeno che mi ha spinto a chiedere aiuto in lista rimane tale e quale, - la prima iterazione _è_ effettivamente più lenta, ma la differenza è inferiore al 5%, mentre quello che sto cercando di identificare è una perdita di efficienza del 30%. Ciò detto, non avevo neanche menzionato questi test perché - ribadisco - se il bottleneck fosse il disco - per latenza o per banda - si vedrebbe _a maggior ragione_ nell'operazione di puro parsing del json _senza_ caricamento in redis. Invece in quel caso la CPU sta fissa sopra il 99%. Comunque pazienza eh, era solo una curiosità, capisco che non hai il sistema sotto mano, né la sfera di cristallo. ciao Pietro _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python