From: Keith David Bershatsky <esq@lawlist.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: emacs-devel@gnu.org
Subject: Re: NS port: How to debug excessive garbage collection?
Date: Thu, 11 Apr 2019 16:04:47 -0700 [thread overview]
Message-ID: <m27ec087ow.wl%esq@lawlist.com> (raw)
Thank you, Eli, for helping me to get started down the road towards diagnosing the excessive garbage collection issue that I am observing on my end.
The garbage collection issue is most noticeable to the naked eye when the fake cursors feature is turned on (e.g., crosshairs) -- using a modified master branch from 04/08/2019. My naked eye does not perceive any obvious problem when holding down the right arrow-key in the stock / unmodified version of Emacs.
I performed three (3) tests wherein I held the right arrow-key (right-char) depressed for a few seconds in the *GNU Emacs* welcome buffer:
(progn
(setq timer-list nil
timer-idle-list nil)
(add-hook 'post-command-hook (lambda () (message "%s" (garbage-collect)))))
1. Stock / Unmodified master branch as of 04/08/2019 (a038df77de7b1aa2d73a6478493b8838b59e4982).
2. Crosshairs turned _off_ using a modified master branch as of 04/08/2019 (a038df77de7b1aa2d73a6478493b8838b59e4982).
3. Crosshairs turned _on_ using a modified master branch as of 04/08/2019 (a038df77de7b1aa2d73a6478493b8838b59e4982).
All tests were performed on the NS platform running OSX 10.6.8 with the following build options:
CFLAGS='-Wall -O0 -g3' ./configure \
--with-ns \
--enable-checking='yes,glyphs' \
--enable-check-lisp-object-type \
--without-compress-install \
--without-makeinfo \
--with-gnutls=no \
--with-mailutils \
--without-makeinfo
============================
;;; begin STOCK / UNMODIFIED
((conses 16 12248 37702)
(symbols 48 1746 1)
(strings 32 4063 432)
(string-bytes 1 118324)
(vectors 16 3486)
(vector-slots 8 52564 9150)
(floats 8 9 88)
(intervals 56 55 25)
(buffers 992 9))
((conses 16 12249 37701)
(symbols 48 1746 1)
(strings 32 4063 432)
(string-bytes 1 118324)
(vectors 16 3486)
(vector-slots 8 52564 9150)
(floats 8 9 88)
(intervals 56 55 25)
(buffers 992 9))
;;; end STOCK UNMODIFIED
============================
;;; begin MODIFIED -- CROSSHAIRS "OFF"
((conses 16 4650 7834)
(symbols 48 1312 1)
(strings 32 595 1792)
(string-bytes 1 36726)
(vectors 16 3654)
(vector-slots 8 52893 12656)
(floats 8 32 261)
(intervals 56 54 26)
(buffers 1072 9))
((conses 16 4651 7833)
(symbols 48 1312 1)
(strings 32 595 1792)
(string-bytes 1 36726)
(vectors 16 3654)
(vector-slots 8 52893 12656)
(floats 8 32 261)
(intervals 56 54 26)
(buffers 1072 9))
;;; end MODIFIED -- CROSSHAIRS "OFF"
============================
;;; begin MODIFIED -- CROSSHAIRS "ON"
((conses 16 5625 6858)
(symbols 48 1314 0)
(strings 32 597 1790)
(string-bytes 1 36822)
(vectors 16 3722)
(vector-slots 8 53307 12242)
(floats 8 233 421)
(intervals 56 54 26)
(buffers 1072 9))
((conses 16 5626 6993)
(symbols 48 1314 0)
(strings 32 597 1790)
(string-bytes 1 36822)
(vectors 16 3722)
(vector-slots 8 53307 12242)
(floats 8 233 547)
(intervals 56 54 26)
(buffers 1072 9))
;;; end MODIFIED -- CROSSHAIRS "ON"
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
> Date: [04-11-2019 07:14:53] <11 Apr 2019 17:14:53 +0300>
> From: Eli Zaretskii <eliz@gnu.org>
> To: Keith David Bershatsky <esq@lawlist.com>
> CC: emacs-devel@gnu.org
> Subject: Re: NS port: How to debug excessive garbage collection?
>
> > Date: Wed, 10 Apr 2019 20:27:49 -0700
> > From: Keith David Bershatsky <esq@lawlist.com>
> >
> > Q: How should I proceed to debug the excessive garbage collection issue on the NS port?
>
> Does that happen with the unmodified master branch, or only with your
> changes?
>
> In any case, I think you should begin by finding out which type of
> Lisp data contributes the most to the garbage, e.g. by looking at the
> output of 'garbage-collect' (the function).
next reply other threads:[~2019-04-11 23:04 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-11 23:04 Keith David Bershatsky [this message]
2019-04-12 9:30 ` NS port: How to debug excessive garbage collection? Eli Zaretskii
-- strict thread matches above, loose matches on Subject: below --
2019-04-16 5:51 Keith David Bershatsky
2019-04-16 2:57 Keith David Bershatsky
2019-04-16 5:26 ` Alex Gramiak
2019-04-15 5:19 Keith David Bershatsky
2019-04-15 2:55 Keith David Bershatsky
2019-04-15 3:44 ` Alex Gramiak
2019-04-14 19:46 Keith David Bershatsky
2019-04-14 23:31 ` Alex Gramiak
2019-04-14 7:41 Keith David Bershatsky
2019-04-13 18:07 Keith David Bershatsky
2019-04-13 21:41 ` Alex Gramiak
2019-04-14 3:47 ` Daniel Colascione
2019-04-13 16:31 Keith David Bershatsky
2019-04-13 17:02 ` Alex Gramiak
2019-04-13 5:55 Keith David Bershatsky
2019-04-13 6:48 ` Eli Zaretskii
2019-04-11 3:27 Keith David Bershatsky
2019-04-11 14:14 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=m27ec087ow.wl%esq@lawlist.com \
--to=esq@lawlist.com \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.