Hallo Struppi,
das find ich ja klasse!
use Benchmark;
my $text = 'test\n';
Benchmark::cmpthese(-1, {
'regExp$' => sub { $text =~ s/\n$//; },
'regExp' => sub { $text =~ s/\n//; },
'chomp' => sub { chomp $text; },
});Benchmark: running chomp, regExp, regExp$, each for at least 3 CPU seconds...
chomp: 3 wallclock secs ( 3.22 usr + 0.00 sys = 3.22 CPU) @ 19810824.17/
s (n=63771043)
regExp: 2 wallclock secs ( 3.14 usr + 0.00 sys = 3.14 CPU) @ 8796678.66/s
(n=27621571)
regExp$: 3 wallclock secs ( 3.06 usr + 0.00 sys = 3.06 CPU) @ 13534063.03/
s (n=41441301)
Rate regExp regExp$ chomp
regExp 8796679/s -- -35% -56%
regExp$ 13534063/s 54% -- -32%
chomp 19810824/s 125% 46% --
Aber widerlegt das nicht deine Theorie, das chomp schneller ist als mein Vorgehen? Aus dem Ergebnis erkenne ich, dass chomp 0.06 CPU-Sekunden mehr benötigt. Ich neige wohl jetzt eher dazu, dass Beispiel von Philipp einzusetzen (s/\n$//).
Ich bitte um Antwort.
aber wie immer, es kann sein das der Benchmark nicht realisitisch ist, da ich nicht mit Mechanismen vertraut bin.
Benchmark ist nicht irgend ein "Tool". Die Tests mit Benchmark sind sehr nahe an der Realität! Ein absolut professionelles Auswertungstool. Wenn "wir" neue Großrechner einkaufen, egal ob bei IBM, Sun oder HP, werden die Maschinen ersteinmal mit einem Großteil unserer eingesetzten Software, zum Beispiel Oracle und selbstentwickelter Jobs, ausführlich mit Benchmark darauf getestet.
Selbst zu ext2, ext3, reiser etc. machen wir Tests mit Benchmark.
Viele Grüße,
coolblue
never say oops after you submitted a job :-)
_der_Ton_macht_die_Musik_!!!_