4 ms·
The major modern use case I know of is command-line utilities which also benefit from low start-up. Of course, that doesn't mean there hasn't been "perf rot" o
by cb321 1y ago
The major modern use case I know of is command-line utilities which also benefit from low start-up. Of course, that doesn't mean there hasn't been "perf rot" over the decades as you say. Such rot should never surprise anyone. :-)
Some perl5 lover should take the time to compile all those 5.6 to 5.42 versions on the same host OS/CPU and do a performance comparison and create a nice chart for the world to trap and maybe correct such performance regressions. I just tried getting 5.8.9 to compile on modern Linux with gcc-15, and it seemed like a real PITA. (Earlier didn't even ./Configure -des right.)
- cb321 1y agoWell, I spent a little more time on it, and for that one Perl version (on one cpu, i7-6700k, one OS - Linux 6.15, with one compiler gcc-15) I got a 1.5x slowdown of perl startup from 2008 to 2025. Not great! zsh# rei=(chrt 99 taskset -c 2-3 env -i HOME=$HOME PATH=/bin) zsh# tim=(-k2 -o14 -n14 -m14) # Set 1 zsh# $rei tim $tim './perl-5.8.9</n' 'perl-5.42.0</n' 218.5 +- 1.9 μs (AlreadySubtracted)Overhead 626 +- 14 μs ./perl-5.8.9</n 953.5 +- 8.6 μs perl-5.42.0</n # Set 2 zsh# $rei tim $tim './perl-5.8.9</n' 'perl-5.42.0</n' 247 +- 15 μs (AlreadySubtracted)Overhead 633 +- 26 μs ./perl-5.8.9</n 989 +- 25 μs perl-5.42.0</n # Consistency check - well within 2 sigma for both zsh# a (989 +- 25)-(953.5 +- 8.6) 36 +- 26 zsh# a (626 +- 14)-(633 +- 26) -7 +- 30 # Final report; weighted means to maximize precision zsh# a mean(989 +- 25,953.5 +- 8.6)/mean(626 +- 14,633 +- 26) 1.525 +- 0.033 EDIT: Oh, yeah, and /n -> /dev/null is a symlink I always use.