On Wed, 7 Jul 2010 16:42:08 +0200, "H.Merijn Brand" <h.m.brand@xs4all.nl> wrote: > On Wed, 7 Jul 2010 16:23:45 +0200, Reini Urban <rurban@x-ray.at> wrote: > > > 2010/7/7 Jesse Vincent <jesse@fsck.com>: > > >> My biggest problem is the "creeping featuritis". > > >> Why must every new perl release be slower than the previous? > > >> I'd love to see some run-time hurting features being optional only. > > >> My concerns are worse startup-times (ENV magic, INC magic), > > >> HEK mallocs, and such. > > > > > > Features don't need to equate to decreased performance, though sometimes > > > (but not always) features _are_ worth a speed hit in some circumstances. > > > In general, yes, I would prefer that each release of Perl be faster and > > > more memory efficient than the previous one. > > > > > > Reini, I've seen you assert performance degradation with new features, > > > but I don't know of any reliable benchmarks of a variety of perl > > > versions on the same hardware+OS that we can use to quantify, visualize > > > and _stop_ performance regressions. Do you have such a test suite > > > and/or published numbers that other porters can use? > > > > Unfortunately not, since I'm porter and theorist only, since cygwin > > and unices in vm's cannot be trusted too much, and I would loose too > > much time waiting for those huge tests. > > My current full compiler test suite runs from 40min to 26 hours for > > all combinations if successful. > > > > But I get a lot of benchmarks and feedback from the real-world, which I > > try to analyse. > > 5.6 is still the fastest by far, all non-threaded of course, then 5.8.9, > > then 5.10, then 5.12. But some newer modules don't work with these > > old modules anymore. > > I currently have about 31 versions of perl available on my USB disk, > and all are built with the same compiler using the same options. These > are 32bit -Duse64bitint -Duselongdouble builds, so unless specific > modules come in play, these could be used to time speed diffs for basic > code. Example: $ perl-all -t -we'@ARGV = sort glob "/tmp/*"' 0.00646 PASS base/perl5.8.1 0.00765 PASS base/perl5.8.0 0.00787 PASS base/perl5.12.1 0.00792 PASS base/perl5.13.0 0.00792 PASS base/perl5.13.2 0.00811 PASS base/perl5.13.1 0.00814 PASS base/perl5.12.0 0.00860 PASS base/perl5.11.0 0.00865 PASS base/perl5.11.5 0.00917 PASS base/perl5.11.4 0.00925 PASS base/perl5.11.3 0.00942 PASS base/perl5.8.3 0.00972 PASS base/perl5.11.1 0.01045 PASS /usr/bin/perl 0.01050 PASS /pro/bin/perl 0.01053 PASS base/perl5.8.2 0.01053 PASS base/perl5.6.0 0.01127 PASS base/perl5.6.2 0.01135 PASS base/perl5.6.1 0.01145 PASS base/perl5.8.5 0.01156 PASS base/perl5.8.4 0.01164 PASS base/perl5.8.9 0.01179 PASS base/perl5.8.6 0.01207 PASS base/perl5.8.7 0.01239 PASS base/perl5.11.2 0.01260 PASS base/perl5.8.8 0.01320 PASS base/perl5.10.1 0.01416 PASS base/perl5.10.0 0.01738 PASS base/perl5.00504 0.01878 PASS base/perl5.00503 0.01910 PASS base/perl5.00405 0.02159 PASS base/perl5.00307 The numbers in the first column is elapsed () from Time::HiRes This example ran tree times before I pasted the results to make sure the system interaction was not being of big influence (disk cache and so) -- H.Merijn Brand http://tux.nl Perl Monger http://amsterdam.pm.org/ using 5.00307 through 5.12 and porting perl5.13.x on HP-UX 10.20, 11.00, 11.11, 11.23, and 11.31, OpenSuSE 10.3, 11.0, and 11.1, AIX 5.2 and 5.3. http://mirrors.develooper.com/hpux/ http://www.test-smoke.org/ http://qa.perl.org http://www.goldmark.org/jeff/stupid-disclaimers/Thread Previous | Thread Next