क्या कोई आदेश जैसा है time
, लेकिन वह अधिक आँकड़ों की रिपोर्ट करता है? यह बहुत अच्छा होगा अगर मैं कुछ कर सकता हूं:
$ statistics some_command
time:
real 0m3.002s
user 0m0.000s
sys 0m0.000s
memory:
min 41K
peak 2.5M
mean 1.1M
. . .
अगर यह और भी आगे बढ़ सकता है, तो यह बहुत अच्छा होगा। अभी, डिबगिंग के लिए, मैं या तो top
वास्तव में (वास्तव में glances
) घूर रहा हूं , या अपने कोड के माध्यम से बयानों को छिड़क रहा हूं।
अगर कुछ ऐसा था जिसे मैं एक कमांड दे सकता था, तो यह शानदार होगा।
संपादित करें
मुझे एक समाधान मिल सकता है: perf
पैकेज में linux-tools
और linux-tools-common
उबंटू 12.04 पर।
$ perf stat ./someprocess
Performance counter stats for './someprocess':
12007.384578 task-clock # 0.996 CPUs utilized
1,092 context-switches # 0.000 M/sec
16 CPU-migrations # 0.000 M/sec
295,102 page-faults # 0.025 M/sec
40,553,682,299 cycles # 3.377 GHz [83.33%]
18,400,458,723 stalled-cycles-frontend # 45.37% frontend cycles idle [83.35%]
8,356,832,355 stalled-cycles-backend # 20.61% backend cycles idle [66.64%]
56,930,684,595 instructions # 1.40 insns per cycle
# 0.32 stalled cycles per insn [83.34%]
9,083,443,825 branches # 756.488 M/sec [83.35%]
3,431,737 branch-misses # 0.04% of all branches [83.33%]
12.051963969 seconds time elapsed
perf
परिणामों में कोई स्मृति आँकड़े नहीं हैं ।