当前位置:首页 > 芯闻号 > 充电吧
[导读]SRS提供了一系列工具来定位性能瓶颈和内存泄漏,这些在./configure && make后的summary中是有给出来用法的,不过不是很方便,所以特地把用法写到这个文章中。文中所有的工具,对于其他

SRS提供了一系列工具来定位性能瓶颈和内存泄漏,这些在./configure && make后的summary中是有给出来用法的,不过不是很方便,所以特地把用法写到这个文章中。

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

备注:所有工具用起来都会导致SRS性能低下,所以除非是排查问题,否则不要开启这些选项。

GPERF

GPERF是google tcmalloc提供的cpu和内存工具,参考GPERF。

GMD

GMD是GPERF提供的内存Defense工具,检测内存越界和野指针。一般在越界写入时,可能不会立刻导致破坏,而是在切换到其他线程使用被破坏的对象时才会发现破坏了,所以这种内存问题很难排查;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是内存泄漏检测工具,参考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是内存性能分析工具,譬如检测是否有频繁的申请和释放堆内存导致的性能问题。参考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性能分析工具,就是一般讲的性能瓶颈,看哪个函数调用占用过多的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因为使用了ST所以最初不支持VALGRIND的分析,所以需要给ST打PATCH才能用,目前还没有合并到SRS。

给ST打PATCH支持VALGRIND,参考state-threads,详细的信息可以参考ST#2。


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

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

May 7, 2024 ---- 据TrendForce集邦咨询最新预估,第二季DRAM合约价季涨幅将上修至13~18%;NAND Flash合约价季涨幅同步上修至约15~20%,全线产品仅eMMC/UFS价格涨幅较小,...

关键字: NAND Flash DRAM

2024年5月6日,全球领先的综合电子元器件制造商村田制作所(以下简称“村田”)氢能源汽车发车仪式在无锡举行。

关键字: 新能源汽车

业内消息,昨天问界(AITO)汽车发布题为《关于山西省侯平高速路段交通事故中问界新 M7 Plus 相关技术问题的说明》的长微博。博文表示 AITO 汽车自 4 月 26 日山西省侯平高速路段事故发生后一直配合交警部门开...

关键字: 问界 AITO 华为

近日,字节跳动发布《企业纪律与职业道德委员会通报(2024年2号)》,因涉嫌构成刑事犯罪、违反廉洁诚信制度、违反利益冲突制度、违反信息安全制度四项原因辞退员工61人。近年来,多家互联网公司密集进行内部反腐整顿,包括腾讯、...

关键字: 互联网 字节跳动 辞退 腾讯 百度

业内消息,4月28日特斯拉CEO马斯克闪电访华,次日马斯克在与宁德时代董事长曾毓群会面后已经离开北京。马斯克不到24小时的访问行程硕果累累,最重大的突破是特斯拉在智能驾驶合规性方面获得“放行”,成为首个通过国家相关标准的...

关键字: 特斯拉 自动驾驶 FSD

近日,华为内部发布了一则令人瞩目的人事调整文件,宣布华为终端BG(业务集团)CEO余承东将卸任,转而担任华为终端BG董事长一职。这一变动不仅引起了业界的广泛关注与讨论,也预示着华为在组织架构和战略方向上的一次重大调整。

关键字: 余承东 华为 终端BG CEO

业内重磅消息,近日4家日本电信行业领军企业(DOCOMO、NTT公司、NEC公司以及富士通)联手打造的全球首款高速6G无线设备正式亮相。该创新产品的问世是科技界的一项重大突破,标志着通信技术迈入了全新的时代。

关键字: 日本 6G 无线设备

今天,一则关于“夫妻驾车坠山身亡”的新闻登上热搜。这起事故之所以引起了广泛关注,一是因为涉事车辆为知名品牌特斯拉,二是因为车速与刹车问题再次成了争议焦点。

关键字: 特斯拉 自动驾驶

在这个充满变革与创新的时代,奥克斯空调凭借其出色的智造品质、研发实力以及创新模式成功突围而出,奥知音Ⅱ空调套系摘得中国家电行业得至高荣誉红顶奖,更获国际权威机构弗若斯特沙利文认证确认2023年取得智能语音空调销量全球第一...

关键字: 奥克斯 智能家居

May 6, 2024 ---- 根据TrendForce集邦咨询资深研究副总吴雅婷表示,受惠于HBM销售单价较传统型DRAM(Conventional DRAM)高出数倍,相较DDR5价差大约五倍,加上AI芯片相关产品...

关键字: DRAM HBM AI
关闭
关闭