gprof

    1熱度

    1回答

    有沒有辦法讓gprof生成的調用圖顯示函數的調用順序?如果我有main() - > study() - > sleep() - > wakeup()和main() - > wakeup() - > study() - > sleep(),則生成的調用圖實際上顯示了這種執行順序的差異。 基本上,我試圖比較兩個C文件,以便找出它們的函數的執行順序是否有所不同。有沒有更好的方法來做到這一點? 感謝

    0熱度

    1回答

    我在Windows上使用MinGW GCC編譯器。如果我添加-pg切換到編譯器,我可以使用配置文件數據生成EXE和DLL。 gmon.out生成。但問題是,當我使用 gprof myprogram.exe gmon.out 我沒有得到任何的個人資料輸出(比表格標題和其他文本等)。 gprof mydll.dll gmon.out 我只得到該特定DLL的輸出,但不是主要的exe。 也許exe

    0熱度

    1回答

    最好是否可以使用某個功能屬性來禁用某個功能的配置文件?我想這樣做是因爲我需要描述在程序的多線程部分中花費的時間。我不關心特定線程的細節,只是在整個批處理中花費的時間。 Timegraph: +--------------------------------+ +--------------------------------+ ---Main thread----+ M

    0熱度

    1回答

    我想分析一個C++應用程序。我試過gprof,HPCToolkit和ScoreP。我的問題是,對於不同的運行,我獲得不同的運行時間,從一次執行到另一次執行(例如2.5和2.7秒)有大約10%的差異。爲什麼?我記得當我在Cray系統上使用CrayPat時,不同處決之間完全沒有區別。 感謝 PS:我在Debian 8

    9熱度

    2回答

    我正嘗試使用gprof來剖析我編寫的C++應用程序,但我無法弄清楚我的生活如何下載和安裝它。我搜索了我能想到的所有內容,甚至找不到下載鏈接。有人請幫忙!

    1熱度

    1回答

    我剛開始使用gprof來優化我的慢代碼。我對一個輸出感到困惑,我希望你能幫助我。 這: 0.01 0.46 500/500 System::Update() [2] [3] 96.2 0.01 0.46 500 Verlet::Advance() [3] 0.02 0.19 61000/61122 CalculateAcceleration(std::vec

    1熱度

    1回答

    我一直在試圖編譯和運行LULESH基準 https://codesign.llnl.gov/lulesh.php https://codesign.llnl.gov/lulesh/lulesh2.0.3.tgz 使用gprof,但我總是得到一個分段錯誤。我更新在Makefile這些指令: CXXFLAGS = -g -pg -O3 -I. -Wall LDFLAGS = -g -pg -O3

    1熱度

    1回答

    我想分析我的代碼,但我想要一個函數不算。 我編譯如下: ,然後我作爲運行: ./eg Datasets/Klein_nb_P1000_dim10000.txt 16 5 3 1 gprof -Q ./eg > Klein_nb_P1000_dim10000_cpu_rot1.txt 我要排除的功能有此簽名。 void readDivisionSpace(Division_Euclidean_

    1熱度

    2回答

    我正在使用gprof來分析C++程序的平面配置文件。但是,由於我有昂貴的設置和拆卸代碼,我不想進入配置文件,因此我想只爲某個塊觸發收集數據。我想做類似的事情: void foo() { --- start collecting --- do stuff --- stop collecting } 有什麼想法嗎?

    1熱度

    1回答

    剖析我用gprof2dot來分析我的應用程序: ./gprof2dot.py -f callgrind callgrind.out.x | dot -Tsvg -o output.svg source 即便如此,它給了我美麗的圖形分析,在每個函數的名稱每個盒子都很長,並且遠遠超過屏幕尺寸。由於boost庫對模板的使用率很高。試想一下,在功能名稱中的一個: std::reference_wrappe