作者kicoomi (左手哥)
看板LinuxDev
標題[問題] 從 meminfo 來判斷 memory leak
時間Thu Apr 14 20:40:05 2016
小弟目前在平台上測試程式時, 發現當我重複跑某個功能
/proc/meminfo 中的 MemFree 會不斷減少, 但是 Active跟Inactive增加的幅度卻
沒這麼多, 是否可以依此判斷有 memory leak 的可能呢
謝謝
以下 meminfo 由左至右是 操作前 10次 20次
操作前跟10次 memFree 的差距減去 Active+Inactive 的差距有 6904 KB
10次跟 20次的差距有 5824 KB
MemTotal: 752836 752836 752836
MemFree: 437492 423784 413452
Buffers: 15144 18620 22012
Cached: 148012 148536 148536
SwapCached: 0 0 0
Active: 103416 106284 107356
Inactive: 143712 147648 151084
Active(anon): 85860 88708 89780
Inactive(anon): 8496 8452 8496
Active(file): 17556 17576 17576
Inactive(file): 135216 139196 142588
Unevictable: 0 0 0
Mlocked: 0 0 0
HighTotal: 425984 425984 425984
HighFree: 155168 145248 138304
LowTotal: 326852 326852 326852
LowFree: 282324 278536 275148
SwapTotal: 0 0 0
SwapFree: 0 0 0
Dirty: 0 0 0
Writeback: 0 0 0
AnonPages: 83976 86848 87912
Mapped: 53376 53376 53376
Shmem: 10404 10404 10404
Slab: 13040 13272 13424
SReclaimable: 5420 5496 5556
SUnreclaim: 7620 7776 7868
KernelStack: 3480 3448 3448
PageTables: 2496 2512 2524
NFS_Unstable: 0 0 0
Bounce: 0 76 0
WritebackTmp: 0 0 0
CommitLimit: 376416 376416 376416
Committed_AS: 2993484 3002852 3004044
VmallocTotal: 401408 401408 401408
VmallocUsed: 213204 213212 213228
VmallocChunk: 118780 118780 118780
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.87.77
※ 文章網址: https://www.ptt.cc/bbs/LinuxDev/M.1460637609.A.8F7.html
※ 編輯: kicoomi (118.163.87.77), 04/15/2016 13:16:08
推 askacis: 你程式有讀寫檔案嗎,讀寫檔案也會耗buffer cache, 04/15 14:10
→ askacis: 可先用posix_fadvise() with POSIX_FADV_DONTNEED 先試試 04/15 14:11
試過了, 雖然 cache的部分會回到 MemFree, 不過 MemFree 整體還是一直減少
cache跟buffer增加的幅度也沒有這麼大, 看起來不是這方面的問題
※ 編輯: kicoomi (118.163.87.77), 04/15/2016 16:40:56
推 cobrasgo: 你所謂的那個功能還可以拆成更小的功能嗎? 04/16 18:51
→ clampsakura: 每次跑前先drop cache看看 05/20 01:00
推 poem5566: valgrind這個套件 跑跑看呢? 03/23 12:09