[gclist] What wrong with the GC in xemacs

Erik Naggum erik@naggum.no
14 Apr 1996 21:39:47 UT


|   *Something* is.  Emacs is noticeably slower when that vm buffer is
|   there, unused, than it is when it isn't.  If it's not the buffer
|   itself, maybe there is other data that vm is using to do its job, that
|   also takes up significant space?

I don't know.  the problem does not seem to happen on my system (SPARC,
SunOS 4.1.3, 32M RAM, 128M swap.  my Emacs is now 60M large with 1300
buffers, and I experience no perceivable degradation in response time or
paging behavior while composing this message or doing other work).  I ran a
(garbage-collect) just now, and no buffers were paged in.  however, when I
call (buffer-list), every buffer must be visited to read their local
variables.  this pages them in and does take a fair amount of time.  Emacs
goes from 2.5M RSS to 25M RSS while this goes on.  during GC, it went from
2.5M RSS to 4M RSS.

obviously, buffer space paging during GC is _not_ the cause of the problem
you are perceiving, because it doesn't happen.  neither does paging in
buffer every once in a while apply.  maybe you're running something that
fires up a call to (buffer-list).  if you can let me know when this
happens, maybe I can help figure it out.  if there is a cause for the
problems you're perceiving, I'd like to find out and solve it.  please
don't bear a grudge against Emacs because of some unsolved problem -- that
doesn't solve the problem nor make Emacs better.

|   >Emacs does not return allocated Lisp Object memory to the system.
|   >this is a recognized problem.  however, it is an issue of
|   >implementation, not a GC issue.
|   
|   Which is exactly what this thread was about, no?

yes, but you're jumping to conclusions.  such is invalid regardless of the
thread's subject.  you fault GC for something that is not related to GC,
even though it may be happening at the same time.  come to think of it, it
_could_ be the auto-saving that has to traverse the buffer-list.

many people like to do argue against Emacs' GC, because it's visible.  RMS
picked up on my suggestion to remove the noisy message, so hopefully, we
won't see as much of this discussion once people upgrade to 19.31.

#<Erik>