我即将开始我的硕士项目,在需求阶段,我需要收集一些有关应用程序对我的系统的性能影响的数据。我主要关注的是加载时间、内存和 CPU 使用率以及关机时间,尽管我希望获得尽可能多的信息。我知道我可以使用系统监视器来获取其中的一些信息,但我需要精确的数据,因为我将在项目期间进行一些前后测试。有什么可以满足要求的(最好是开源的)吗?
答案1
你可以简单地做time command
,它会给你如下结果:
$ time sleep 3
real 0m3.001s
user 0m0.000s
sys 0m0.000s
如果需要更多输出,请使用/usr/bin/time -v
:
$ /usr/bin/time -v sleep 3
Command being timed: "sleep 3"
User time (seconds): 0.00
System time (seconds): 0.00
Percent of CPU this job got: 0%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:03.01
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): 2192
Average resident set size (kbytes): 0
Major (requiring I/O) page faults: 1
Minor (reclaiming a frame) page faults: 181
Voluntary context switches: 3
Involuntary context switches: 1
Swaps: 0
File system inputs: 16
File system outputs: 0
Socket messages sent: 0
Socket messages received: 0
Signals delivered: 0
Page size (bytes): 4096
Exit status: 0
答案2
你应该使用GNU 会计实用程序。这将为您提供详细的进程资源信息。
您可以通过以下方式安装它们:sudo aptitude install acct
通过运行以下命令将记录的统计数据打印到终端:sa
sa 的 ubuntu 手册页是这里。
萨汇总 acct 文件中记录的有关以前执行的命令的信息。此外,它还将这些数据压缩到名为 savacct 的摘要文件中,其中包含调用命令的次数和使用的系统资源。还可以按每个用户汇总信息;sa 会将此信息保存到名为 usracct 的文件中。
答案3
使用 top 或 ps 命令怎么样?:
top > footprint.txt &
ps > footprint.txt &