emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master dc771b6: Also count symbol plists in memory-report


From: Lars Ingebrigtsen
Subject: master dc771b6: Also count symbol plists in memory-report
Date: Wed, 30 Dec 2020 02:29:18 -0500 (EST)

branch: master
commit dc771b6c409c016dec6aea394d574de1cca3c583
Author: Lars Ingebrigtsen <larsi@gnus.org>
Commit: Lars Ingebrigtsen <larsi@gnus.org>

    Also count symbol plists in memory-report
    
    * lisp/emacs-lisp/memory-report.el (memory-report--symbol-plist):
    New function.
    (memory-report): Use it.
---
 lisp/emacs-lisp/memory-report.el | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/lisp/emacs-lisp/memory-report.el b/lisp/emacs-lisp/memory-report.el
index 3327499..1cb9ad1 100644
--- a/lisp/emacs-lisp/memory-report.el
+++ b/lisp/emacs-lisp/memory-report.el
@@ -48,6 +48,7 @@ by counted more than once."
   (message "Gathering data...")
   (let ((reports (append (memory-report--garbage-collect)
                          (memory-report--image-cache)
+                         (memory-report--symbol-plist)
                          (memory-report--buffers)
                          (memory-report--largest-variables)))
         (inhibit-read-only t)
@@ -159,6 +160,17 @@ by counted more than once."
                            "\n"))
        (buffer-string)))))
 
+(defun memory-report--symbol-plist ()
+  (let ((counted (make-hash-table :test #'eq))
+        (total 0))
+    (mapatoms
+     (lambda (symbol)
+       (cl-incf total (memory-report--object-size
+                       counted (symbol-plist symbol))))
+     obarray)
+    (list
+     (cons "Memory Used By Symbol Plists" total))))
+
 (defun memory-report--object-size (counted value)
   (if (gethash value counted)
       0



reply via email to

[Prev in Thread] Current Thread [Next in Thread]