emacs-devel
[Top][All Lists]
Advanced

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

Re: NS port: How to debug excessive garbage collection?


From: Keith David Bershatsky
Subject: Re: NS port: How to debug excessive garbage collection?
Date: Sun, 14 Apr 2019 00:41:48 -0700

Thank you, Alex, for the advice regarding testing for garbage collection issues 
on the other two platforms (i.e., X11 and w32), and also regarding make certain 
edits/improvements to the existing code of multiple fake cursors.  I will work 
on these in the next day or so.

Using an unsophisticated method of commenting out various modifications that I 
have made over the past few years, I am working towards coming up with a 
minimal (or at least significantly reduced) working example to demonstrate the 
issue that I am observing.  I will need another 1 to 2 hours with a cup of 
coffee after a good night sleep ....

At this point, I am about 98 percent certain that the main issue traces to the 
function mc_helper and the cache for fake cursors that have already been laid.  
In a nutshell, Emacs gets bogged down by a list of 100 elements of sub-lists -- 
and this is true even when the sub-list is reduced to just one element (instead 
of fourteen); e.g.,:

  '((make_fixnum (1))(make_fixnum (2))(make_fixnum (3)) ... (make_fixnum (99))

Eliminating other calls to the creation of floats appears to help reduce the 
overhead a little, but the main problem occurs with the master cache created by 
mc_helper.

I'll continue chiseling away tomorrow ...

Keith



reply via email to

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