From: Kenichi Handa <handa@m17n.org>
To: Chong Yidong <cyd@stupidchicken.com>
Cc: rms@gnu.org, emanuele.giaquinta@gmail.com, emacs-devel@gnu.org,
dann@ics.uci.edu, monnier@iro.umontreal.ca,
evilborisnet@netscape.net, jasonr@gnu.org
Subject: Re: size of emacs executable after unicode merge
Date: Thu, 27 Nov 2008 20:20:21 +0900 [thread overview]
Message-ID: <E1L5euz-0005r3-IQ@etlken.m17n.org> (raw)
In-Reply-To: <87r65flh5n.fsf@cyd.mit.edu> (message from Chong Yidong on Thu, 13 Nov 2008 11:33:40 -0500)
In article <87r65flh5n.fsf@cyd.mit.edu>, Chong Yidong <cyd@stupidchicken.com> writes:
> Kenichi Handa <handa@m17n.org> writes:
>>> > One idea is to have a single boolean vector of size #x110000
>>> > (139264 bytes), setup it for CHARSET everytime when we call
>>> > map-charset-chars for the different charset. In that
>>> > vector, only the bit for #x3000, #x3001, #x3002, etc are 1
>>> > for chinese-gb2312. Then map-charset-chars can know for
>>> > which characters FUNCTION must be called.
> >
>>> but it appears to free a negligible about of memory.
> >
> > Did you comment out the calls of unify-charset in
> > mule-conf.el and change the encoding of all preloaded *.el
> > files to utf-8?
> Commenting out the calls to unify-charset does reduce the memory by
> several megabytes.
After taking over Chong's experiment, I could reduce the
size of Emacs executables about 7M bytes. About 4M bytes
were actually because of charset mapping tables, and it
could be reduced by setting up C structure temp_charset_work
(see charset.c for the detail) instead of making many Lisp
objects (char-table and vector). Another 3M bytes were
because of big standard category table. It could be reduced
by hashing the table entries (see hash_get_category_set in
category.c for the detail).
As a result, now the executable is 10,671,313 bytes on
GNU/Linux. It's still 1.6M bytes larger than Emacs 22, but
I'm not sure it's worth making more effort to reduce it.
---
Kenichi Handa
handa@ni.aist.go.jp
next prev parent reply other threads:[~2008-11-27 11:20 UTC|newest]
Thread overview: 86+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-14 3:13 size of emacs executable after unicode merge Evil Boris
2008-05-14 3:51 ` Dan Nicolaescu
2008-05-14 16:39 ` Richard M Stallman
2008-05-14 16:52 ` Dan Nicolaescu
2008-05-15 14:18 ` Richard M Stallman
2008-05-15 15:29 ` Dan Nicolaescu
2008-05-16 11:31 ` Richard M Stallman
2008-05-16 12:06 ` Dan Nicolaescu
2008-05-16 12:32 ` Kenichi Handa
2008-05-16 12:55 ` Jason Rumney
2008-05-16 15:59 ` Thomas Lord
2008-05-16 22:07 ` Stephen J. Turnbull
2008-05-16 23:01 ` Thomas Lord
2008-05-17 0:56 ` Kenichi Handa
2008-05-17 1:52 ` YAMAMOTO Mitsuharu
2008-05-19 1:45 ` Kenichi Handa
2008-10-30 10:18 ` Emanuele Giaquinta
2008-10-30 21:22 ` Eli Zaretskii
2008-10-30 21:42 ` Stefan Monnier
2008-10-31 3:55 ` Richard M. Stallman
2008-10-31 5:29 ` Kenichi Handa
2008-10-31 6:32 ` Chong Yidong
2008-10-31 7:32 ` Kenichi Handa
2008-10-31 10:09 ` Eli Zaretskii
2008-10-31 12:33 ` gdb error [Re: size of emacs executable after unicode merge] Kenichi Handa
2008-10-31 14:28 ` Eli Zaretskii
2008-10-31 12:35 ` size of emacs executable after unicode merge Stephen Berman
2008-11-21 12:32 ` Kenichi Handa
2008-11-21 14:18 ` Ulrich Mueller
2008-10-31 10:41 ` YAMAMOTO Mitsuharu
2008-10-31 15:07 ` Dan Nicolaescu
2008-10-31 16:44 ` Stefan Monnier
2008-11-04 23:09 ` Chong Yidong
2008-11-05 4:17 ` Kenichi Handa
2008-11-05 15:50 ` Stefan Monnier
2008-11-06 7:56 ` Kenichi Handa
2008-11-08 2:42 ` Stefan Monnier
2008-11-08 4:10 ` Chong Yidong
2008-11-08 9:19 ` Eli Zaretskii
2008-11-09 0:27 ` Richard M. Stallman
2008-11-09 6:29 ` Dan Nicolaescu
2008-11-09 17:11 ` Richard M. Stallman
2008-11-10 1:24 ` Stefan Monnier
2008-11-10 1:55 ` Thomas Lord
2008-11-11 4:37 ` Chong Yidong
2008-11-08 10:30 ` Dan Nicolaescu
2008-11-09 20:14 ` Chong Yidong
2008-11-10 1:59 ` Kenichi Handa
2008-11-10 15:18 ` Chong Yidong
2008-11-10 23:18 ` Chong Yidong
2008-11-11 18:17 ` Chong Yidong
2008-11-12 6:26 ` Kenichi Handa
2008-11-13 16:33 ` Chong Yidong
2008-11-14 0:48 ` Kenichi Handa
2008-11-27 11:20 ` Kenichi Handa [this message]
2008-11-27 16:07 ` Chong Yidong
2008-11-27 16:12 ` Dan Nicolaescu
2008-11-28 1:02 ` Kenichi Handa
2008-11-27 16:31 ` Stefan Monnier
2008-11-27 20:17 ` Richard M Stallman
2008-11-27 20:42 ` Eli Zaretskii
2008-11-28 1:47 ` Kenichi Handa
2008-11-28 15:38 ` Richard M Stallman
2008-11-29 1:52 ` Kenichi Handa
2008-11-29 10:47 ` Eli Zaretskii
2008-11-29 19:43 ` Richard M Stallman
2008-11-30 4:50 ` Chetan Pandya
2008-11-28 16:11 ` Juanma Barranquero
2008-11-29 1:47 ` Kenichi Handa
2008-11-29 11:13 ` Juanma Barranquero
2008-11-29 12:17 ` Juanma Barranquero
2008-11-29 13:50 ` Kenichi Handa
2008-11-29 15:05 ` Juanma Barranquero
2008-11-05 22:30 ` Richard M. Stallman
2008-11-06 11:58 ` Kenichi Handa
2008-11-07 12:39 ` Richard M. Stallman
2008-11-07 13:29 ` Stephen J. Turnbull
2008-11-07 21:15 ` Richard M. Stallman
2008-11-08 4:00 ` Stephen J. Turnbull
2008-11-08 4:19 ` Stefan Monnier
2008-10-31 19:30 ` Richard M. Stallman
2008-11-09 22:43 ` Chong Yidong
2008-11-09 22:57 ` Chong Yidong
2008-11-10 1:28 ` Kenichi Handa
2008-11-10 19:29 ` Richard M. Stallman
2008-11-10 1:26 ` Kenichi Handa
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=E1L5euz-0005r3-IQ@etlken.m17n.org \
--to=handa@m17n.org \
--cc=cyd@stupidchicken.com \
--cc=dann@ics.uci.edu \
--cc=emacs-devel@gnu.org \
--cc=emanuele.giaquinta@gmail.com \
--cc=evilborisnet@netscape.net \
--cc=jasonr@gnu.org \
--cc=monnier@iro.umontreal.ca \
--cc=rms@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.