all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: Luc Teirlinck <teirllm@dms.auburn.edu>,
	rms@gnu.org, ralphm@members.fsf.org, emacs-devel@gnu.org,
	Eli Zaretskii <eliz@gnu.org>,
	YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>,
	mathias.dahl@gmail.com
Subject: Re: Building Emacs overflowed pure space
Date: Sat, 22 Jul 2006 23:47:44 -0400	[thread overview]
Message-ID: <jwvslktvvcu.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <m3slkt1bgr.fsf@kfs-l.imdomain.dk> (Kim F. Storm's message of "Sun, 23 Jul 2006 01:11:48 +0200")

>>> If the string data in the pure storage can be assumed to be completely
>>> read-only (including the preloading stage), another hack could be
>>> considered.  That is, sharing postfixes of string data among multiple
>>> pure strings.  The following experimental patch shows another ~40KB
>>> reduction of the pure storage usage.  (A slow and naive but reliable
>>> version not using Boyer-Moore also shows the same size of reduction.)
> I tried the exact the same thing (using the naive version), but the
> dumped emacs crashed immediately after loadup, thinking that "nil" was
> a filename...  So I didn't think it was safe to do this.

There may be one or two unexpected details to work out, but I think the
approach is fundamentally pretty safe.

>> Cute,
>> And it does remove the --cl-dolist-temp-- vs --dolist-temp-- difference.

> How?  --do... != c-do...  !?

One of the problems mentioned in this thread is that not only each uninterned
symbol used by dolist is a separate object, but that the symbol's name
(i.e. the string "--cl-dolist-temp--") is also duplicated when reading the
.elc file, which is why the length of the symbol's name makes a difference
in the amount of pure storage used.  If all strings are basically
hash-consed, then this problem disappears.


        Stefan

  reply	other threads:[~2006-07-23  3:47 UTC|newest]

Thread overview: 72+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-07-18  8:38 Building Emacs overflowed pure space Mathias Dahl
2006-07-18  9:02 ` Ralph Moritz
2006-07-18 12:06   ` Mathias Dahl
2006-07-18 13:37     ` David Hansen
2006-07-18 15:00   ` Richard Stallman
2006-07-18 18:55     ` Luc Teirlinck
2006-07-18 20:16       ` Eli Zaretskii
2006-07-18 20:56         ` Stefan Monnier
2006-07-19  2:51           ` Eli Zaretskii
2006-07-19  4:35             ` Stefan Monnier
2006-07-19  4:42             ` Miles Bader
2006-07-19 18:13               ` Eli Zaretskii
2006-07-19 13:52           ` mituharu
2006-07-19 15:07             ` Stefan Monnier
2006-07-19 21:16             ` Richard Stallman
2006-07-20  1:12               ` YAMAMOTO Mitsuharu
2006-07-22  9:06             ` YAMAMOTO Mitsuharu
2006-07-22 16:03               ` Stefan Monnier
2006-07-22 23:11                 ` Kim F. Storm
2006-07-23  3:47                   ` Stefan Monnier [this message]
2006-07-25  1:14                   ` YAMAMOTO Mitsuharu
2006-07-25  4:13                     ` Richard Stallman
2006-07-25 10:41                       ` YAMAMOTO Mitsuharu
2006-07-25 10:56                         ` David Kastrup
2006-07-25 11:00                           ` Andreas Schwab
2006-07-25 11:05                             ` David Kastrup
     [not found]                             ` <85ejwahrqi.fsf@lola.goethe.zz>
2006-07-25 11:08                               ` Andreas Schwab
2006-07-25 11:23                                 ` David Kastrup
2006-07-23  5:26               ` Richard Stallman
2006-07-18 22:01         ` Luc Teirlinck
2006-07-18 23:44           ` Chong Yidong
2006-07-19  0:06             ` Luc Teirlinck
2006-07-19  0:14               ` Luc Teirlinck
2006-07-19  0:21               ` Luc Teirlinck
2006-07-19  2:56           ` Eli Zaretskii
2006-07-18 19:29     ` Luc Teirlinck
2006-07-19  6:04       ` Richard Stallman
2006-07-19  9:22         ` YAMAMOTO Mitsuharu
2006-07-19  9:46           ` YAMAMOTO Mitsuharu
2006-07-19 15:05             ` Stefan Monnier
2006-07-19 23:13               ` Kim F. Storm
2006-07-20  4:05                 ` Stefan Monnier
2006-07-20  2:13               ` YAMAMOTO Mitsuharu
2006-07-20  2:21               ` Richard Stallman
2006-07-20  2:21               ` Richard Stallman
2006-07-20  4:07                 ` Stefan Monnier
2006-07-20  8:14                   ` Kim F. Storm
2006-07-20 15:26                     ` Stefan Monnier
2006-07-20 18:16                       ` Richard Stallman
2006-07-19 21:15           ` Richard Stallman
2006-07-19 22:47             ` Kim F. Storm
2006-07-20 15:33               ` Richard Stallman
2006-07-20  9:34             ` Kim F. Storm
2006-07-20  9:58               ` David Kastrup
2006-07-20 11:35                 ` Kim F. Storm
2006-07-20 13:46                   ` David Kastrup
2006-07-20 18:16               ` Richard Stallman
2006-07-21  8:36                 ` Kim F. Storm
2006-07-21 19:36                   ` Richard Stallman
2006-07-21 19:48                     ` David Kastrup
2006-07-21 20:40                       ` Andreas Schwab
2006-07-21 20:49                         ` David Kastrup
2006-07-22 15:49                       ` Richard Stallman
2006-07-20 16:03             ` Stefan Monnier
2006-07-20 21:46               ` Richard Stallman
2006-07-20 22:11                 ` Stefan Monnier
2006-07-21  4:46                   ` Richard Stallman
2006-07-21 12:57                     ` Stefan Monnier
2006-07-21 19:37                       ` Richard Stallman
2006-07-19  0:44 ` Katsumi Yamaoka
  -- strict thread matches above, loose matches on Subject: below --
2006-08-07 13:30 Klaus Zeitler
2006-08-08  9:20 ` Klaus Zeitler

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=jwvslktvvcu.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=mathias.dahl@gmail.com \
    --cc=mituharu@math.s.chiba-u.ac.jp \
    --cc=ralphm@members.fsf.org \
    --cc=rms@gnu.org \
    --cc=teirllm@dms.auburn.edu \
    /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.