2013-03-20 99 views
-1

我想配置我的Perl脚本的CPU时间。我发现了Devel :: Nytprof和Devel :: SmallProf ,但第一个不能显示CPU时间,第二个工作不好。至少我找不到我需要的东西。perl cpu分析

你能为我的目的建议任何工具吗?

UPD:我每行分析需要/因为我的剧本花费了大量的CPU时间,我想提高它的一部分

+3

我不知道,它是如何帮助你看到的CPU时间? [在这个谈话幻灯片7](http://cdn.oreillystatic.com/en/assets/1/event/27/State-of-the-art%20Profiling%20with%20Devel__NYTProf%20Presentation.pdf)据说CPU时间不是一个很好的措施。 Devel :: NYTProf可以告诉你每个函数/方法调用的时间。你想实现什么? – average 2013-03-20 11:43:28

+0

基准如何? http://search.cpan.org/~rjbs/perl-5.16.3/lib/Benchmark.pm – 2013-03-20 12:06:46

回答

1

你可以试试你的系统的(!没有外壳的内部)time实用程序(领导\不是一个错字):

$ \time -v perl collatz.pl 
13 40 20 10 5 16 8 4 2 1 
23 70 35 106 53 160 80 40 
837799 525 
    Command being timed: "perl collatz.pl" 
    User time (seconds): 3.79 
    System time (seconds): 0.06 
    Percent of CPU this job got: 97% 
    Elapsed (wall clock) time (h:mm:ss or m:ss): 0:03.94 
    Average shared text size (kbytes): 0 
    Average unshared data size (kbytes): 0 
    Average stack size (kbytes): 0 
    Average total size (kbytes): 0 
    Maximum resident set size (kbytes): 171808 
    Average resident set size (kbytes): 0 
    Major (requiring I/O) page faults: 9 
    Minor (reclaiming a frame) page faults: 14851 
    Voluntary context switches: 16 
    Involuntary context switches: 935 
    Swaps: 0 
    File system inputs: 1120 
    File system outputs: 0 
    Socket messages sent: 0 
    Socket messages received: 0 
    Signals delivered: 0 
    Page size (bytes): 4096 
    Exit status: 0