11
« : 09 Декабря 2005, 15:26:39 »
Скушаную память покажет ps, а эффективность алгоритма проверяется при помощи Benchmark.
use Benchmark;
my $iterations = 10000000;
sub add {
1 + 1 + 1 + 1 + 1
}
sub mlt {
1 * 5
}
timethese ( $iterations, { \'Сложение\' => add(), \'Умножение\' => mlt() });
Benchmark: timing 10000000 iterations of Сложение, Умножение...
Сложение: 2 wallclock secs ( 0.93 usr + 0.00 sys = 0.93 CPU) @ 10729613.73/s (n=10000000)
Умножение: 1 wallclock secs ( 0.68 usr + 0.00 sys = 0.68 CPU) @ 14705882.35/s (n=10000000)
В плане производительности лучше обойтись без использования eval, что бы perl скомпилировал скрипт целиком при запуске. Так же это позволяет выявлять ошибки на этапе компиляции, а не во время работы скрипта.