2012-06-22 130 views
1

我有一個程序,具有66MB的峯值內存使用量,我正在嘗試使用Valgrind Massif進行配置。不幸的是,Massif只顯示了800KB的峯值內存使用量。另一方面,頂部告訴我,65MB是共享內存。可以在Linux中分析程序的共享內存使用情況嗎?如何分享共享內存?

+0

'貓/ proc/pid/maps'? – sarnold

+0

我知道/ proc/pid/smap,與/ proc/pid/maps有什麼區別?它會讓我看到我程序的整個「記憶生活」嗎? –

回答

3

至少在Valgrind的3.7.0,你有下面的選項,它應該給你需要的東西: --pages-作爲堆=無|在頁面級是資料內存[無]

+0

爲了完整起見,讓我說我每秒鐘對'/ proc/pic/smaps'進行採樣並對輸出進行後處理,但是這隻會讓我在每個庫的基礎上使用內存。 'valgrind --tool = massif --pages-as-heap = yes'好得多! –