日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 芯聞號 > 充電吧
[導(dǎo)讀]SRS提供了一系列工具來定位性能瓶頸和內(nèi)存泄漏,這些在./configure && make后的summary中是有給出來用法的,不過不是很方便,所以特地把用法寫到這個文章中。文中所有的工具,對于其他

SRS提供了一系列工具來定位性能瓶頸和內(nèi)存泄漏,這些在./configure && make后的summary中是有給出來用法的,不過不是很方便,所以特地把用法寫到這個文章中。

文中所有的工具,對于其他的linux程序也是有用的。

備注:所有工具用起來都會導(dǎo)致SRS性能低下,所以除非是排查問題,否則不要開啟這些選項。

GPERF

GPERF是google tcmalloc提供的cpu和內(nèi)存工具,參考GPERF。

GMD

GMD是GPERF提供的內(nèi)存Defense工具,檢測內(nèi)存越界和野指針。一般在越界寫入時,可能不會立刻導(dǎo)致破壞,而是在切換到其他線程使用被破壞的對象時才會發(fā)現(xiàn)破壞了,所以這種內(nèi)存問題很難排查;GMD能在越界和野指針使用時直接core dump,定位在那個出問題的地方。參考GMD。

Usage:

# Build SRS with GMD.
./configure --with-gperf --with-gmd && make

# Start SRS with GMD.
env TCMALLOC_PAGE_FENCE=1 ./objs/srs -c conf/console.conf
GMC

GMC是內(nèi)存泄漏檢測工具,參考GMC。

Usage:

# Build SRS with GMC
./configure --with-gperf --with-gmc && make

# Start SRS with GMC
env PPROF_PATH=./objs/pprof HEAPCHECK=normal ./objs/srs -c conf/console.conf 2>gmc.log 

# Or CTRL+C to stop gmc
killall -2 srs

# To analysis memory leak
cat gmc.log
GMP

GMP是內(nèi)存性能分析工具,譬如檢測是否有頻繁的申請和釋放堆內(nèi)存導(dǎo)致的性能問題。參考GMP。

Usage:

# Build SRS with GMP
./configure --with-gperf --with-gmp && make

# Start SRS with GMP
./objs/srs -c conf/console.conf

# Or CTRL+C to stop gmp
killall -2 srs 

# To analysis memory profile
./objs/pprof --text objs/srs gperf.srs.gmp*
GCP

GCP是CPU性能分析工具,就是一般講的性能瓶頸,看哪個函數(shù)調(diào)用占用過多的CPU。參考GCP。

Usage:

# Build SRS with GCP
./configure --with-gperf --with-gcp && make

# Start SRS with GCP
./objs/srs -c conf/console.conf

# Or CTRL+C to stop GCP
killall -2 srs

# To analysis cpu profile
./objs/pprof --text objs/srs gperf.srs.gcp*
GPROF

GPROF是個GNU的CPU性能分析工具。參考SRS GPROF,以及GNU GPROF。

Usage:

# Build SRS with GPROF
./configure --with-gprof && make

# Start SRS with GPROF
./objs/srs -c conf/console.conf

# Or CTRL+C to stop GPROF
killall -2 srs

# To analysis result.
gprof -b ./objs/srs gmon.out
VALGRIND

VALGRIND是大名鼎鼎的C分析工具,SRS因?yàn)槭褂昧薙T所以最初不支持VALGRIND的分析,所以需要給ST打PATCH才能用,目前還沒有合并到SRS。

給ST打PATCH支持VALGRIND,參考state-threads,詳細(xì)的信息可以參考ST#2。


原文鏈接:https://blog.csdn.net/win_lin/article/details/53503869

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉