|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
想在服务器程序中使用gpeRFtools分析性能。目前正在学习使用中。
4 | z. A# }9 j9 ?1 ?1 A# |! @4 N0 g写一个非常简单的hello.c程序,虽然程序简单,怎么说都应该有哪怕一句性能输出,可结果完全意外,myperf.prof 大小4331,转成pdf大小为0,可自动退出的简单程序尚且无法输出文件,无法自动退出的服务器程序就更不可能了,特别沮丧,哪位大神可以帮指点以下? \( A" u+ a( d/ \: o
究竟用法上问题处在哪?' V- y5 B8 J' o, z" A& ]0 t
1 f$ B7 i- Z e1 v/ F
不胜感激
; Z$ C# T+ u1 i
( i" P& V6 }) K1 khello.c内容:
! T% |0 \" ?9 W7 j4 J/ m' H# h% K. d- y
void main()8 D/ a5 Y% A0 b) q$ H
{, A J( P4 S$ ], a& [
int i = 0;+ H: e J2 w* C
while(i < 100)
0 v9 I( y! K" Q {
7 g0 U4 S! ]& F$ s sleep(1);
& i! V: j1 P1 d" A3 u5 [7 ]7 E printf("hello worlde %d \n",i);
3 B& J# I) Q: u O/ v }
) _6 }2 g3 d/ t! H' G9 |0 Z( ^" R- b- J9 H- ~: O8 q
return;; A# b0 h: {2 C @ i! q
}
- ^ E# Q/ p! E2 f/ m; j! t6 w* ?0 ^
& c& H% k5 G$ i* F4 j. v
尝试是否可以输出性能文件。 T: B( t B. |9 \
gperftools安装略过。
- j2 H; S7 B _6 f- P编译及执行命令:3 f' b& a5 k: X7 N# K
$ gcc -o hello hello.c
1 f1 H4 U0 T& k' \* Q1 @* \$ env CPUPROFILE=myperf.prof LD_PRELOAD=/usr/lib/libprofiler.so ./hello
. I8 e) n2 I" x1 {* e/ ^
* ^! p- x4 V9 U' d输出结果:
2 x3 }8 P& H) H& Z" f-rw-rw-r-- 1 xxx xxx 4331 6月 25 23:34 myperf.prof
0 W2 D$ Z' \' j S. m. E-rw-rw-r-- 1 xxx xxx 0 6月 25 23:34 perf.pdf
( B& u/ E" L: L; n# l) @+ L7 h* r* p! Y+ p/ H f* j
$ pprof --pdf /home/xxx/hello myperf.prof>perf.pdf
1 \; q4 h4 J: e! ?5 H( q( ~Using local file /home/xxx/hello.* W# ^* a+ E3 {) Q& M4 {* B
Using local file myperf.prof.2 o; k3 `- a1 e8 ?8 b: G" y
No nodes to print
+ K6 c c8 v& g& C, [/ J" @8 C7 W# g" b, w2 ~
myperf.prof内容:7 g* W) l" @: r9 x
4 01e32000-01e64000 rw-p 00000000 00:00 0 [heap]1 e' z4 V8 e! I$ f e
5 7f8519007000-7f8519419000 rw-p 00000000 00:00 0
. b k9 y* Z( G- o) h' L 6 7f8519419000-7f851941c000 r-xp 00000000 00:00 535279 /lib/x86_64-linux-gnu/libdl-2.23.so: d9 i) O7 f; g& a
7 7f851941c000-7f851961b000 ---p 00003000 00:00 535279 /lib/x86_64-linux-gnu/libdl-2.23.so
9 m' S7 b3 g# {1 c6 B6 u 8 7f851961b000-7f851961c000 r--p 00002000 00:00 535279 /lib/x86_64-linux-gnu/libdl-2.23.so9 w2 ~6 M/ X2 q8 N \
9 7f851961c000-7f851961d000 rw-p 00003000 00:00 535279 /lib/x86_64-linux-gnu/libdl-2.23.so
U0 N: q4 T. j. @2 v b' x% k 10 7f851961d000-7f8519633000 r-xp 00000000 00:00 529546 /lib/x86_64-linux-gnu/libgcc_s.so.1( |1 N% K. c$ M7 V
11 7f8519633000-7f8519832000 ---p 00016000 00:00 529546 /lib/x86_64-linux-gnu/libgcc_s.so.10 G1 H& Y$ I: R
12 7f8519832000-7f8519833000 rw-p 00015000 00:00 529546 /lib/x86_64-linux-gnu/libgcc_s.so.1
; d8 [: F/ o8 l) X 13 7f8519833000-7f851993b000 r-xp 00000000 00:00 535357 /lib/x86_64-linux-gnu/libm-2.23.so: Q% F# p4 s' F
14 7f851993b000-7f8519b3a000 ---p 00108000 00:00 535357 /lib/x86_64-linux-gnu/libm-2.23.so
9 E& D0 w, Z& a S( F3 L4 d$ E" k 15 7f8519b3a000-7f8519b3b000 r--p 00107000 00:00 535357 /lib/x86_64-linux-gnu/libm-2.23.so& n. }1 M9 S- w$ G& b& r
16 7f8519b3b000-7f8519b3c000 rw-p 00108000 00:00 535357 /lib/x86_64-linux-gnu/libm-2.23.so; i( @: v# W3 z E; c# ^% \
17 7f8519b3c000-7f8519b5d000 r-xp 00000000 00:00 529575 /lib/x86_64-linux-gnu/liblzma.so.5.0.0# c+ M8 B$ h& N+ b9 W) d* ~" O1 G' t
18 7f8519b5d000-7f8519d5c000 ---p 00021000 00:00 529575 /lib/x86_64-linux-gnu/liblzma.so.5.0.0: g9 a0 I9 x S
19 7f8519d5c000-7f8519d5d000 r--p 00020000 00:00 529575 /lib/x86_64-linux-gnu/liblzma.so.5.0.05 z5 o# n; K4 B4 m% \3 w: U, |9 d
20 7f8519d5d000-7f8519d5e000 rw-p 00021000 00:00 529575 /lib/x86_64-linux-gnu/liblzma.so.5.0.0
. e: M: m& y5 `. K 21 7f8519d5e000-7f8519ed0000 r-xp 00000000 00:00 262189 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21
5 U) f$ I; r+ a9 ~2 T0 u 22 7f8519ed0000-7f851a0d0000 ---p 00172000 00:00 262189 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21
" c/ h+ P" \, _$ W# d! K 23 7f851a0d0000-7f851a0da000 r--p 00172000 00:00 262189 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21$ E n0 v) l- i4 t; p
24 7f851a0da000-7f851a0dc000 rw-p 0017c000 00:00 262189 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.214 M7 s; u ?$ l/ v' Z1 a
25 7f851a0dc000-7f851a0e0000 rw-p 00000000 00:00 0, }$ W3 R) a4 Z2 {/ L- i
26 7f851a0e0000-7f851a0ec000 r-xp 00000000 00:00 274049 /usr/lib/x86_64-linux-gnu/libunwind.so.8.0.1
4 r/ H/ [1 C9 {- a8 U) ]0 ? 27 7f851a0ec000-7f851a2eb000 ---p 0000c000 00:00 274049 /usr/lib/x86_64-linux-gnu/libunwind.so.8.0.1
$ I& ^: e V* D0 s 28 7f851a2eb000-7f851a2ec000 r--p 0000b000 00:00 274049 /usr/lib/x86_64-linux-gnu/libunwind.so.8.0.1
) l( t; F G" [- a4 s 29 7f851a2ec000-7f851a2ed000 rw-p 0000c000 00:00 274049 /usr/lib/x86_64-linux-gnu/libunwind.so.8.0.13 l1 ]; q% _! \( l( d3 K% W' }( g/ ?
30 7f851a2ed000-7f851a2fb000 rw-p 00000000 00:00 0
. l: {5 Y. Y0 h 31 7f851a2fb000-7f851a4bb000 r-xp 00000000 00:00 535351 /lib/x86_64-linux-gnu/libc-2.23.so% I V1 x/ x5 q$ U( h3 ^2 V
32 7f851a4bb000-7f851a6bb000 ---p 001c0000 00:00 535351 /lib/x86_64-linux-gnu/libc-2.23.so
! f Q. Q: P5 a1 z* Q 33 7f851a6bb000-7f851a6bf000 r--p 001c0000 00:00 535351 /lib/x86_64-linux-gnu/libc-2.23.so
7 p' r# P# Z( y) [+ ~1 m- ]! { 34 7f851a6bf000-7f851a6c1000 rw-p 001c4000 00:00 535351 /lib/x86_64-linux-gnu/libc-2.23.so
& U5 O( _5 o5 }4 \3 v2 s) ? 35 7f851a6c1000-7f851a6c5000 rw-p 00000000 00:00 0+ W- z' q( V1 W2 c. K" x) n8 C
36 7f851a6c5000-7f851a6d3000 r-xp 00000000 00:00 265143 /usr/lib/libprofiler.so.0.4.5
) d s% g0 T2 q+ H7 G3 I 37 7f851a6d3000-7f851a8d3000 ---p 0000e000 00:00 265143 /usr/lib/libprofiler.so.0.4.5- g. J; m" {. I8 F
38 7f851a8d3000-7f851a8d4000 r--p 0000e000 00:00 265143 /usr/lib/libprofiler.so.0.4.5- z8 @0 N2 Q: D( T' J
39 7f851a8d4000-7f851a8d5000 rw-p 0000f000 00:00 265143 /usr/lib/libprofiler.so.0.4.5
5 H4 n r2 S- C) q 40 7f851a8d5000-7f851a8d9000 rw-p 00000000 00:00 0
8 g* ?9 S& W. v0 k$ ]) ^5 a0 [, b. `" z) W. B9 b
|
|