[LugBS] Konqueror e processore in Kubuntu Hardy
Luca Coianiz
luca a coianiz.it
Sab 18 Lug 2009 10:50:03 UTC
On Fri, 17 Jul 2009, Maurizio Paolini wrote:
> Riporto qui sotto un modo minimale per evidenziare
> il problema: [fedora 11 glibc-2.10.1-2.i686 grep-2.5.3-4.fc11.i586]
>
> $ for n in `seq 10000`
>> do
>> echo "0" >>test.txt
>> done
> $ export LANG=en_US.UTF-8
> $ time grep [0] test.txt >/dev/null
>
> real 0m9.102s <--------------- 9 secondi!!!
> user 0m8.419s
> sys 0m0.021s
> $ export LANG=en_US
> $ time grep [0] test.txt >/dev/null
>
> real 0m0.018s <--------------- 18 millesimi di sec
> user 0m0.004s
> sys 0m0.001s
> --------------------------------------
>
> La differenza di tempo di calcolo e' spaventosa... e non si
> spiega semplicemente dicendo che non viene usato un algoritmo
> sufficientemente astuto, c'e' proprio dietro un baco.
> Oltretutto la differenza non si vede se l'espressione regolare
> e' "0" invece che "[0]" (semanticamente del tutto equivalenti).
Ma è un problema solo di Fedora+UTF8?
Perchè ho eseguito il "paolini test" su una Debian 4.0 con grep (GNU grep) 2.5.1 e glibc-2.3.6-2 e mi ha dato tempi simili
(stesso ordine di grandezza) su entrambi:
home:/tmp# echo $LANG
en_US.UTF-8
home:/tmp# time grep [0] test.txt >/dev/null
real 0m0.020s
user 0m0.020s
sys 0m0.000s
home:/tmp# export LANG=en_US
home:/tmp# time grep [0] test.txt >/dev/null
real 0m0.013s
user 0m0.004s
sys 0m0.008s
home:/tmp# uname -a
Linux home 2.6.24-etchnhalf.1-686 #1 SMP Wed Apr 29 18:45:14 UTC 2009 i686 GNU/Linux
e sto usando un vecchio P3/800.
LC
Maggiori informazioni sulla lista
Lug
|