#! perl -slw use strict; use Benchmark qw[cmpthese]; cmpthese( -3, { append1k => q[ my $buffer .= 'x' x 1024 for 0..5; ], push1k => q[ my @buffer; push @buffer, 'X' x 1024 for 0..5; ], }); cmpthese( -3, { append8k => q[ my $buffer .= 'x' x 8192 for 0..5; ], push8k => q[ my @buffer; push @buffer, 'X' x 8192 for 0..5; ], }); cmpthese( -3, { append64k => q[ my $buffer .= 'x' x 65536 for 0..5; ], push64k => q[ my @buffer; push @buffer, 'X' x 65536 for 0..5; ], }); #### P:\test>test Rate push1k append1k push1k 4816/s -- -26% append1k 6472/s 34% -- Rate push8k append8k push8k 982/s -- -9% append8k 1078/s 10% -- Rate push64k append64k push64k 43.4/s -- -33% append64k 65.3/s 50% --