我正在嘗試減少C++應用程序的內存佔用量。隨着時間的推移,由於開發人員爲了各種目的在存儲器中創建新的重複數據表示,此應用程序對內存的使用量不斷增長。如何在內存分析期間跟蹤C++應用程序中內存訪問的頻率和數量?
我想確定訪問這些重複表示的數據的頻率,以便我可以決定是否使它們短暫存取以及創建訪問權限以減少峯值堆大小。
所以我的問題是 - 什麼是最好的方法來跟蹤,不僅大小和內存分配,的體積也是頻率和訪問量堆內存?我知道所有基本的內存配置文件處理分配信息 - 與內存訪問相關的是我感興趣的內容。
理想的答案是獨立於平臺,因爲此應用程序在Windows,Linux,iOS和Android上運行。但是,我會接受適用於這些平臺以及這些平臺通常使用的任何處理器架構的答案,因爲我們沒有特定於平臺的行爲會影響這類事情。
IIRC valgrind支持這一點。 –
寫下它作爲一個答案與一些指令,以便如何獲得這些信息,我會愉快地upvote和/或接受。 –
對不起,但我更加認同:_「要求我們推薦或找到書籍,工具,軟件庫,教程或其他非本地資源的問題與Stack Overflow無關,因爲它們傾向於吸引自以爲是的答案並且垃圾郵件,而是描述問題以及到目前爲止解決問題所做的工作。「_ –