6月 23

用Devel::SmallProf测量Perl函数的执行时间

资料来源

用Devel::SmallProf测量Perl函数的执行时间
perl 的调试和性能测试
Perl 问题之万能指南

Devel::SmallProf是个很好用的模块,可以方便地测量出代码每一行的执行时间,以便进一步优化。

例如以下程序,文件名为test.pl。

1
2
3
4
5
6
7
#!/usr/bin/perl
 
my $str = "0";
for ( my $i = 0 ; $i < 100 ; $i++ ) {
   $str =~ s/d+/($&+1)/e;
   print $str. "n";
}

该程序的功能是输出整数 1 到 100。当然实际写程序时可不要用这么低效率的方法。
安装 Devel::SmallProf 之后我们来测量一下它每一行代码的执行时间。

1
perl -d:SmallProf test.pl

执行之后会在当前目录下生成一个 smallprof.out 文件,其内容如下:
Continue reading