mirror of
https://github.com/ossrs/srs.git
synced 2025-02-12 11:21:52 +00:00
Compress repository, remove gprof files.
This commit is contained in:
parent
a11461905b
commit
ff2001a612
4 changed files with 2 additions and 2278 deletions
17
trunk/3rdparty/gprof/build_gprof2dot.sh
vendored
17
trunk/3rdparty/gprof/build_gprof2dot.sh
vendored
|
@ -1,17 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# check exists.
|
||||
if [[ -d graphviz-2.18 ]]; then
|
||||
echo "graphviz is ok";
|
||||
exit 0;
|
||||
fi
|
||||
|
||||
# check sudoer.
|
||||
sudo echo "ok" > /dev/null 2>&1;
|
||||
ret=$?; if [[ 0 -ne ${ret} ]]; then echo "you must be sudoer"; exit 1; fi
|
||||
|
||||
unzip -q graphviz-2.36.0.zip
|
||||
cd graphviz-2.36.0 && ./configure && make && sudo make install
|
||||
ret=$?; if [[ $ret -ne 0 ]]; then echo "build gprof2dot failed."; exit $ret; fi
|
||||
|
||||
echo "we test in Centos6.0, it's ok"
|
2227
trunk/3rdparty/gprof/gprof2dot.py
vendored
2227
trunk/3rdparty/gprof/gprof2dot.py
vendored
File diff suppressed because it is too large
Load diff
BIN
trunk/3rdparty/gprof/graphviz-2.36.0.zip
vendored
BIN
trunk/3rdparty/gprof/graphviz-2.36.0.zip
vendored
Binary file not shown.
36
trunk/3rdparty/gprof/readme.txt
vendored
36
trunk/3rdparty/gprof/readme.txt
vendored
|
@ -1,36 +1,4 @@
|
|||
gprof图形化输出工具: gprof2dot.py graphviz-2.18.tar.gz build_gprof2dot.sh
|
||||
|
||||
dot:
|
||||
http://www.graphviz.org/
|
||||
http://www.graphviz.org/Download_source.php
|
||||
graphviz-2.18.tar.gz 绘图工具
|
||||
build_gprof2dot.sh 编译graphviz,命令为dot。
|
||||
要求是sudoer,需要sudo make install。
|
||||
|
||||
gprof2dot.py:
|
||||
将gprof的日志绘图。
|
||||
|
||||
使用方法:
|
||||
0. 若需要图形化,编译dot:
|
||||
cd 3rdparty/gprof && bash build_gprof2dot.sh
|
||||
1. srs配置时:
|
||||
./configure --with-gprof
|
||||
脚本会加入编译参数"-pg -lc_p",gcc -g -pg -lc_p -c xxx -o xxx.o,即在configure中打开 Performance="-pg -lc_p"
|
||||
链接时,加入链接选项"-pg",否则无法工作:gcc -pg -o srs xxxx.o,即在configure中打开 PerformanceLink="-pg"
|
||||
2. 编译和启动程序:make && ./objs/srs -c conf/srs.conf
|
||||
退出程序,按CTRL+C,可以看到生成了gmon.out,这个就是性能的统计数据。
|
||||
3. gprof生成报表:
|
||||
gprof -b ./objs/srs gmon.out > gprof.srs.log
|
||||
4. 将报表生成图片:
|
||||
./3rdparty/gprof/gprof2dot.py gprof.srs.log | dot -Tpng -o ~/winlin.png
|
||||
为了压缩仓库尺寸,gprof的文件不在新版本提供,可以切换到2.0分支安装:
|
||||
https://github.com/ossrs/srs/tree/2.0release/trunk/3rdparty/gprof
|
||||
|
||||
缩写语句:
|
||||
# 生成 ~/winlin.log ~/winlin.png
|
||||
rm -f gmon.out; ./objs/srs -c conf/srs.conf
|
||||
# 用户按CTRL+C
|
||||
file="winlin";gprof -b ./objs/srs gmon.out > ~/${file}.log; ./3rdparty/gprof/gprof2dot.py ~/${file}.log | dot -Tpng -o ~/${file}.png
|
||||
|
||||
备注:
|
||||
其实gprof生成的日志就可以看,不一定要图形化。
|
||||
也就是dot和gprof2dot都不用执行。
|
||||
参考:http://www.cs.utah.edu/dept/old/texinfo/as/gprof.html
|
||||
|
|
Loading…
Reference in a new issue