How to find the cause of nvim using excessive memory
How to find the cause of nvim using excessive memory
My current nvim is using excessive memory, 34.1GB.
How can I go about to find the cause of the excessive memory leak if any:
Activity Monitor on MacOS reports this using the "i" inspector:
Real memory size : 4,58 GB
Virtual memory size : 40,74 GB
Shared memory size : 8,00 GB
Private memory size : 4,87 GB
I have looked at the call graph using the sample feature of the Activity monitor, but to me it provides no meaningful information. The log provides pages of method names, in a graph.
Here is an extract illustrating the method / function names: (I guess I need debug symbols or something to interpret this)
+ 59 ex_return (in nvim) + 110 [0x10d6ae827]
+ ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + 59 eval0 (in nvim) + 62 [0x10d6a3393]
+ ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + 59 eval1 (in nvim) + 49 [0x10d6a352a]
+ ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + 59 eval3 (in nvim) + 49 [0x10d6b111e]
+ ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + 59 eval4 (in nvim) + 48 [0x10d6b1276]
+ ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + 59 eval5 (in nvim) + 53 [0x10d6b1981]
+ ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + 59 eval6 (in nvim) + 49 [0x10d6b1d3b]
+ ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + 58 eval7 (in nvim) + 4215 [0x10d6b3041]
+ ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! : | + ! 58 get_func_tv (in nvim) + 455 [0x10d6a5dd3]
At the bottom of the log, I see this:
Total number in stack (recursive counted multiple, when >=5):
161 eval6 (in nvim) + 49 [0x10d6b1d3b]
160 eval4 (in nvim) + 48 [0x10d6b1276]
158 eval5 (in nvim) + 53 [0x10d6b1981]
157 eval3 (in nvim) + 49 [0x10d6b111e]
151 eval1 (in nvim) + 49 [0x10d6a352a]
89 eval7 (in nvim) + 4215 [0x10d6b3041]
82 eval0 (in nvim) + 62 [0x10d6a3393]
81 get_func_tv (in nvim) + 455 [0x10d6a5dd3]
56 call_func (in nvim) + 1014 [0x10d6a4108]
55 call_user_func (in nvim) + 2220 [0x10d6a9a4e]
55 do_cmdline (in nvim) + 2399 [0x10d6e553b]
55 do_one_cmd (in nvim) + 9595 [0x10d6e87bb]
53 get_func_tv (in nvim) + 189 [0x10d6a5cc9]
36 try_malloc (in nvim) + 26 [0x10d744925]
36 xmalloc (in nvim) + 11 [0x10d7449c1]
By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.
Comments
Post a Comment