GNU bug report logs -
#72688
big lets are deathly slow
Previous Next
Full log
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
performance of let seems to be about O(n^2) for n bindings
bash script to reproduce
range="$1"
time guile --no-auto-compile <( printf "(let ("; for i in $(seq 0 $range); do printf "(foo%s 'bar)" $i; done; printf ") '())" )
$ ./let.sh 10000
real 0m1.059s
user 0m1.306s
sys 0m0.064s
$ ./let.sh 20000
real 0m3.901s
user 0m4.197s
sys 0m0.078s
$ ./let.sh 40000
real 0m14.955s
user 0m15.707s
sys 0m0.188s
$ ./let.sh 80000
./let.sh: line 2: 6182 Segmentation fault guile --no-auto-compile <( printf '(let ('; for i in $(seq 0 $range); do printf '(foo%s '"'"'bar)' $i; done; printf ") '())" )
real 0m58.146s
user 0m59.156s
sys 0m0.326s
This bug report was last modified 305 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.