我的Perl程序Stas
我需要您的帮助来实现一些东西,以便在perl程序执行期间或执行结束时监视CPU/MEM的使用情况 假设一个程序每N分钟运行一次,由另一个Perl程序启动,后者的执行时间从几秒到1分钟不等。如何获得执行此程序所产生的CPU/MEM使用率 其中一些要求是:我的Perl程序Stas,perl,statistics,cpu,profile,Perl,Statistics,Cpu,Profile,我需要您的帮助来实现一些东西,以便在perl程序执行期间或执行结束时监视CPU/MEM的使用情况 假设一个程序每N分钟运行一次,由另一个Perl程序启动,后者的执行时间从几秒到1分钟不等。如何获得执行此程序所产生的CPU/MEM使用率 其中一些要求是: 监测应尽可能少地干预 在执行 节目 监控应至少使用 系统资源 操作系统尽可能独立。应该 在Linux、Win32、HP-UX、Solaris、, AIX。好的,但让我们先集中注意力 Linux 我用一些方法思考: 实现我自己的Devel::M
- 监测应尽可能少地干预 在执行 节目
- 监控应至少使用 系统资源
- 操作系统尽可能独立。应该 在Linux、Win32、HP-UX、Solaris、, AIX。好的,但让我们先集中注意力 Linux
gulden探查器或跟踪工具可能是解决此问题的错误方法,因为它会对正在运行的程序的性能(和内存使用)产生影响。可能不是你想要的 大多数UNIX-y操作系统支持系统调用,如
getrusage()
,这将使您能够获取当前进程或子进程的资源利用率统计数据。在Unix::Getrusage
中有一个Perl接口;或者,大多数UNIX系统都有一个time
实用程序和/或shell内置程序,用于收集子进程的统计信息
Windows对我来说是一个黑匣子,所以我不确定它是否有任何等价物。如果您想查看分析,请查看 开销是合理的。内存映射非常有用。交叉发布到Perlmonks: