吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用valgrind的callgrind工具進(jìn)行多線(xiàn)程性能分析

如意 ? 來(lái)源:CSDN ? 作者:CaspianSea ? 2020-06-22 09:51 ? 次閱讀

valgrind是開(kāi)源的性能分析利器。 根據(jù)它的文檔,可以用它來(lái)檢查內(nèi)存泄漏等問(wèn)題,還可以用來(lái)生成函數(shù)的調(diào)用圖,就這兩個(gè)功能就足夠有吸引力了。

本文主要是介紹如何使用valgrind的callgrind工具進(jìn)行性能分析。

分析過(guò)程

使用callgrind工具生成性能分析數(shù)據(jù)

命令格式如下:

valgrind --tool=callgrind 。/exproxy

其中 ./exproxy就是我們要分析的程序。執(zhí)行完畢后,就會(huì)在當(dāng)前目錄下生成一個(gè)文件。文件名為“callgrind.out.進(jìn)程號(hào)”。如,callgrind.out.31113。注意,對(duì)于daemon進(jìn)程的調(diào)試,不要通過(guò)kill -9方式停止。

如果你調(diào)試的程序是多線(xiàn)程,你也可以在命令行中加一個(gè)參數(shù) -separate-threads=yes。這樣就會(huì)為每個(gè)線(xiàn)程單獨(dú)生成一個(gè)性能分析文件。如下:

valgrind --tool=callgrind --separate-threads=yes 。/exproxy

生成的文件除了callgrind.out.31113外,還會(huì)多出一些子線(xiàn)程的文件。文件名如下:

callgrind.out.31113-01 callgrind.out.31113-02 callgrind.out.31113-03

把callgrind生成的性能數(shù)據(jù)轉(zhuǎn)換成dot格式數(shù)據(jù)

可以使用gprof2dot.py腳本,把callgrind生成的性能分析數(shù)據(jù)轉(zhuǎn)換成dot格式的數(shù)據(jù)。方便使用dot把分析數(shù)據(jù)圖形化。

腳本可以 這里下載。腳本使用方式如下:

使用dot把數(shù)據(jù)生成圖片

命令格式如下:

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 多線(xiàn)程
    +關(guān)注

    關(guān)注

    0

    文章

    278

    瀏覽量

    20071
  • Valgrind
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    6827
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Java多線(xiàn)程的用法

    本文將介紹一下Java多線(xiàn)程的用法。 基礎(chǔ)介紹 什么是多線(xiàn)程 指的是在一個(gè)進(jìn)程中同時(shí)運(yùn)行多個(gè)線(xiàn)程,每個(gè)線(xiàn)程都可以獨(dú)立執(zhí)行不同的任務(wù)或操作。 與單線(xiàn)程
    的頭像 發(fā)表于 09-30 17:07 ?1005次閱讀

    如何合理的進(jìn)行線(xiàn)程切換與調(diào)度

    基于STM32F4XX+RTOS的多線(xiàn)程程序開(kāi)發(fā)及線(xiàn)程性能分析與狀態(tài)查看前言STM32F4xx系列是ST公司高性?xún)r(jià)比產(chǎn)品,由于可以很方便的移植RTOS系統(tǒng),在
    發(fā)表于 08-24 07:33

    QNX環(huán)境下多線(xiàn)程編程

    介紹了QNX 實(shí)時(shí)操作系統(tǒng)和多線(xiàn)程編程技術(shù),包括線(xiàn)程間同步的方法、多線(xiàn)程程序的分析步驟、線(xiàn)程基本程序結(jié)構(gòu)以及實(shí)用編譯方法。QNX 是由加拿大
    發(fā)表于 08-12 17:37 ?30次下載

    LINUX系統(tǒng)下多線(xiàn)程與多進(jìn)程性能分析

    采用多進(jìn)程處理多個(gè)任務(wù),會(huì)占用很多系統(tǒng)資源(主要是CPU 和內(nèi)存的使用)。在LINUX 中,則對(duì)這種弊端進(jìn)行了改進(jìn),在用戶(hù)態(tài)實(shí)現(xiàn)了多線(xiàn)程處理多任務(wù)。本文系統(tǒng)論述了多線(xiàn)程
    發(fā)表于 08-13 08:31 ?20次下載

    數(shù)控測(cè)井軟件中的多線(xiàn)程編程技術(shù)

    為滿(mǎn)足實(shí)時(shí)測(cè)井需求,提高系統(tǒng)資源的利用率和系統(tǒng)性能,在數(shù)控測(cè)井軟件開(kāi)發(fā)中將多線(xiàn)程編程技術(shù)應(yīng)用其中,并對(duì)多線(xiàn)程編程技術(shù)應(yīng)用的可行性和必要性進(jìn)行分析
    發(fā)表于 01-14 17:17 ?32次下載

    LabWindows_CVI多線(xiàn)程技術(shù)的應(yīng)用研究

    分析線(xiàn)程與進(jìn)程的關(guān)系,研究了LabWindows/CVI多線(xiàn)程技術(shù)運(yùn)行機(jī)制及其數(shù)據(jù)保護(hù)機(jī)制,對(duì)利用異步定時(shí)器實(shí)現(xiàn)的多線(xiàn)程軟件與傳統(tǒng)單線(xiàn)程
    發(fā)表于 08-29 14:53 ?68次下載
    LabWindows_CVI<b class='flag-5'>多線(xiàn)程</b>技術(shù)的應(yīng)用研究

    MFC下的多線(xiàn)程編程

    計(jì)算機(jī)上的上位機(jī)制作工具語(yǔ)言之MFC下的多線(xiàn)程編程
    發(fā)表于 09-01 14:55 ?0次下載

    Windows多線(xiàn)程編程

    計(jì)算機(jī)上的上位機(jī)制作工具語(yǔ)言之Windows多線(xiàn)程編程,感興趣的可以看看。
    發(fā)表于 09-01 15:27 ?0次下載

    關(guān)于多線(xiàn)程編程教程及經(jīng)典應(yīng)用案例的匯總分析

    在一個(gè)程序中,這些獨(dú)立運(yùn)行的程序片段叫作線(xiàn)程,利用它編程的概念就叫作多線(xiàn)程處理。具有多線(xiàn)程能力的計(jì)算機(jī)因有硬件支持而能夠在同一時(shí)間執(zhí)行多于一個(gè)線(xiàn)程,進(jìn)而提升整體處理
    發(fā)表于 10-16 16:46 ?0次下載

    多線(xiàn)程好還是單線(xiàn)程好?單線(xiàn)程多線(xiàn)程的區(qū)別 優(yōu)缺點(diǎn)分析

    摘要:如今單線(xiàn)程多線(xiàn)程已經(jīng)得到普遍運(yùn)用,那么到底多線(xiàn)程好還是單線(xiàn)程好呢?單線(xiàn)程多線(xiàn)程的區(qū)別又
    發(fā)表于 12-08 09:33 ?8.2w次閱讀

    什么是多線(xiàn)程編程?多線(xiàn)程編程基礎(chǔ)知識(shí)

    摘要:多線(xiàn)程編程是現(xiàn)代軟件技術(shù)中很重要的一個(gè)環(huán)節(jié)。要弄懂多線(xiàn)程,這就要牽涉到多進(jìn)程。本文主要以多線(xiàn)程編程以及多線(xiàn)程編程相關(guān)知識(shí)而做出的一些結(jié)論。
    發(fā)表于 12-08 16:30 ?1.3w次閱讀

    如何利用基于字節(jié)碼插樁實(shí)現(xiàn)的多線(xiàn)程調(diào)試工具

    在軟件演化過(guò)程中,代碼的調(diào)試是不可或缺的重要環(huán)節(jié)。對(duì)于多線(xiàn)程程序,線(xiàn)程的交錯(cuò)和調(diào)度是非確定的,不同的線(xiàn)程調(diào)度會(huì)產(chǎn)生不同的結(jié)果,程序員較難調(diào)試多線(xiàn)程程序。為此,對(duì)實(shí)際項(xiàng)目中
    發(fā)表于 07-06 14:13 ?13次下載
    如何利用基于字節(jié)碼插樁實(shí)現(xiàn)的<b class='flag-5'>多線(xiàn)程</b>調(diào)試<b class='flag-5'>工具</b>

    Python多線(xiàn)程的使用

    最近常常需要處理大量的crash數(shù)據(jù),對(duì)這些數(shù)據(jù)進(jìn)行分析,在此之前需要將存量的數(shù)據(jù)導(dǎo)入自己的數(shù)據(jù)庫(kù),開(kāi)始一天一天的去導(dǎo),發(fā)現(xiàn)太慢了,后來(lái)嘗試通過(guò)python多線(xiàn)程并行導(dǎo)入多天數(shù)據(jù),以此記錄對(duì)于Python
    的頭像 發(fā)表于 03-17 14:57 ?1149次閱讀

    多線(xiàn)程如何保證數(shù)據(jù)的同步

    。本文將詳細(xì)介紹多線(xiàn)程數(shù)據(jù)同步的概念、問(wèn)題、以及常見(jiàn)的解決方案。 一、多線(xiàn)程數(shù)據(jù)同步概念 在多線(xiàn)程編程中,數(shù)據(jù)同步指的是通過(guò)某種機(jī)制來(lái)確保多個(gè)線(xiàn)程對(duì)共享數(shù)據(jù)的操作按照一定的順序和規(guī)則
    的頭像 發(fā)表于 11-17 14:22 ?1315次閱讀

    mfc多線(xiàn)程編程實(shí)例

    (圖形用戶(hù)界面)應(yīng)用程序的開(kāi)發(fā)。在這篇文章中,我們將重點(diǎn)介紹MFC中的多線(xiàn)程編程。 多線(xiàn)程編程在軟件開(kāi)發(fā)中非常重要,它可以實(shí)現(xiàn)程序的并發(fā)執(zhí)行,提高程序的效率和響應(yīng)速度。MFC提供了豐富的多線(xiàn)程支持,可以輕松地實(shí)現(xiàn)
    的頭像 發(fā)表于 12-01 14:29 ?1568次閱讀
    百家乐官网园试玩| 24山向吉凶| 百家乐官网投注软件有用吗| 真龙娱乐| 百家乐怎样下注| 赌博百家乐趋势把握| 成都南偏西24度风水| 澳门百家乐官网赌钱| 网上百家乐官网分析软件| 岚皋县| 大发888开户即送58| 百家乐发牌牌规| 百家乐书籍| 澳门百家乐心德| 怎么赢百家乐官网的玩法技巧和规则 | bet365体育投注| 大发888充值平台| 百家乐7人桌布| 百家乐计划策略| 真人百家乐视频赌博| 百家乐d博彩论坛| 天博百家乐官网娱乐城| 赌场百家乐官网是如何| 百家乐官网澳门色子| 网上百家乐官网注册彩金| 宁远县| 明升信誉| 新澳门娱乐城官网| 大发888官方网站指定开| 老虎机单机游戏下载| 百家乐和的打法| 大集汇百家乐的玩法技巧和规则 | 玩百家乐怎么才能赢| 网页百家乐游戏| 3U百家乐游戏| 做生意风水| 风水24山| 求购百家乐程序| 百家乐好多假网站| 百家乐高手论坮| 属兔做生意门面房朝向|