I have tracked down a performance issue in my application that can be highlighted with the example below. Although the example is trival I want to understand why Windows (Vista) is so much slower than Linux (typically 70-100 times slower depending on the version of Perl) when growing a scalar? I have tested this under Perl 5.8.x and Perl 5.10.x. Could this be a bug?
The original thread for this question is here http://www.perlmonks.org/?node_id=810049
Regards, Red.
use strict; use warnings; my $iter = 1000000; #number of items my $string =''; #our string my $teststring='abcdefghijklmnopqrstuvwxyz1234567890'; #what to grow t +he string #Comment out this line to speed things up under windows. #$string = 1 x ($iter* length($teststring)); Time(); $string=''; for (1..$iter) { $string.=$teststring; } Time(); print "Finished\n"; sleep(2000); sub Time { my ($user,$system,$cuser,$csystem) = times; print "$user,$system\n"; }
In reply to Why is Windows 100 times slower than Linux when growing a large scalar? by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |