From: Nix <nix@esperi.org.uk>
To: Dmitry Antipov <dmantipov@yandex.ru>
Cc: emacs-devel@gnu.org
Subject: Re: Emacs bzr memory footprint
Date: Fri, 21 Oct 2011 19:36:06 +0100 [thread overview]
Message-ID: <87obxakx9l.fsf@spindle.srvr.nix> (raw)
In-Reply-To: <4EA1BA05.5080506@yandex.ru> (Dmitry Antipov's message of "Fri, 21 Oct 2011 22:29:25 +0400")
On 21 Oct 2011, Dmitry Antipov outgrape:
> On 10/21/2011 07:22 PM, Nix wrote:
>
>> Really? I double-checked the glibc-2.12 malloc source
>
> Hmm... I didn't check the sources and didn't any tests, but info manual from 2.14 says:
>
> `M_MMAP_THRESHOLD'
> All chunks larger than this value are allocated outside the
> normal heap, using the `mmap' system call. This way it is
> guaranteed that the memory for these chunks can be returned
> to the system on `free'. Note that requests smaller than
> this threshold might still be allocated via `mmap'.
They might. If sbrk() fails, mmap() is tried instead before giving up.
However, in this case, resetting the mmap threshold isn't going to help:
it'll try anyway.
> The manual may be outdated, so I'll check this too. If you're right,
> these calls of mallopt (M_MMAP_MAX, 0) becomes redundant with never glibcs
> (but still should present for compatibility with old versions).
IIRC glibc malloc has always worked this way (in fact I think it worked
this way even back when it was Doug Lea's malloc, before Wolfram Gloger
took over maintenance). It's got less aggressive in use of mmap() over
the years, but has never allocated storage below the minimum threshold
except in dire straits, because mmap() is so slow. It certainly worked
this way when I first looked at it back in the 2.2 days.
(Though the calls are indeed harmless unless you want glibc's newer
auto-weighting, which I think we probably don't for Emacs as it would
make our existing fragmentation problems even worse.)
--- current bloat score, holding steady:
STIME TIME RSS VSZ
13:38 00:12:07 374056 561116
-- GC165 end: lisp data 173241 Kb (144386 live, 28854 free), 139720 mem nodes (6549 Kb), heap 303948 Kb used, 78115 Kb free
(This sort of rising in bursts is also characteristic of heap
fragmentation.)
next prev parent reply other threads:[~2011-10-21 18:36 UTC|newest]
Thread overview: 113+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-13 9:24 Emacs bzr memory footprint Carsten Mattner
2011-10-13 10:01 ` Eli Zaretskii
2011-10-13 10:33 ` Andreas Schwab
2011-10-13 10:46 ` Eli Zaretskii
2011-10-13 13:08 ` Carsten Mattner
2011-10-13 13:38 ` Eli Zaretskii
2011-10-13 15:22 ` Miles Bader
2011-10-13 15:30 ` Eli Zaretskii
2011-10-13 16:16 ` Stefan Monnier
2011-10-13 17:33 ` Dmitry Antipov
2011-10-13 18:42 ` Eli Zaretskii
2011-10-14 3:09 ` Dmitry Antipov
2011-10-13 16:46 ` Stephen J. Turnbull
2011-10-13 16:59 ` Carsten Mattner
2011-10-13 13:13 ` Carsten Mattner
2011-10-13 13:43 ` Eli Zaretskii
2011-10-13 14:10 ` Dave Abrahams
2011-10-13 14:46 ` Eli Zaretskii
2011-10-13 15:05 ` Dave Abrahams
2011-10-13 14:22 ` Stefan Monnier
2011-10-13 16:55 ` Carsten Mattner
2011-10-13 17:09 ` Stefan Monnier
2011-10-14 12:11 ` Carsten Mattner
2011-10-14 21:02 ` John Wiegley
2011-10-15 1:22 ` Stefan Monnier
2011-10-13 17:22 ` Richard Riley
2011-10-13 16:12 ` Chong Yidong
2011-10-13 20:18 ` chad
2011-10-14 12:13 ` Carsten Mattner
2011-10-14 12:18 ` Carsten Mattner
2011-10-14 15:49 ` Sven Joachim
2011-10-14 16:30 ` Ted Zlatanov
2011-10-14 16:48 ` Sven Joachim
2011-10-14 17:16 ` Carsten Mattner
2011-10-15 18:12 ` Sven Joachim
2011-10-20 13:35 ` Nix
2011-10-20 23:02 ` John Wiegley
2011-10-21 0:19 ` Nix
2011-10-21 8:19 ` Eli Zaretskii
2011-10-21 12:05 ` Nix
2011-10-21 12:36 ` Eli Zaretskii
2011-10-21 12:47 ` Nix
2011-10-21 14:30 ` Dmitry Antipov
2011-10-21 15:22 ` Nix
2011-10-21 18:29 ` Dmitry Antipov
2011-10-21 18:36 ` Nix [this message]
2011-10-21 13:30 ` Stefan Monnier
2011-10-21 15:02 ` Nix
2011-10-21 17:52 ` Stefan Monnier
2011-10-21 19:12 ` Nix
2011-10-21 15:34 ` Dmitry Antipov
2011-10-21 18:00 ` Stefan Monnier
2011-10-21 18:27 ` Óscar Fuentes
2011-10-21 18:58 ` Eli Zaretskii
2011-10-21 19:11 ` Nix
2011-10-21 20:18 ` Eli Zaretskii
2011-10-21 20:21 ` Nix
2011-10-22 7:34 ` Carsten Mattner
2011-10-22 8:30 ` Stephen J. Turnbull
2011-10-22 12:03 ` Carsten Mattner
2011-10-22 16:08 ` Stephen J. Turnbull
2011-10-27 22:10 ` Ted Zlatanov
2011-10-28 6:40 ` Eli Zaretskii
2011-10-28 9:34 ` Stephen J. Turnbull
2011-10-28 9:47 ` Eli Zaretskii
2011-10-28 10:22 ` Stephen J. Turnbull
2011-10-28 10:36 ` Eli Zaretskii
2011-10-28 11:52 ` valgrind warnings [Re: Emacs bzr memory footprint] Dan Nicolaescu
2011-10-28 14:08 ` Stephen J. Turnbull
2011-10-28 14:38 ` Dan Nicolaescu
2011-10-28 15:17 ` Chong Yidong
2011-10-28 15:35 ` Eli Zaretskii
2011-10-28 15:27 ` Eli Zaretskii
2011-10-28 16:34 ` Dan Nicolaescu
2011-10-28 18:36 ` Eli Zaretskii
2011-10-28 18:51 ` Eli Zaretskii
2011-10-28 18:52 ` Dan Nicolaescu
2011-10-28 19:03 ` Eli Zaretskii
2011-10-28 15:08 ` Ted Zlatanov
2011-12-04 21:11 ` Florian Weimer
2011-10-28 20:20 ` Dan Nicolaescu
2011-10-29 3:40 ` Chong Yidong
2011-10-29 7:04 ` Andreas Schwab
2011-10-29 16:25 ` Stefan Monnier
2011-11-04 12:51 ` Dan Nicolaescu
2011-11-04 13:08 ` Andreas Schwab
2011-11-04 15:50 ` valgrind warnings Paul Eggert
2011-11-04 17:37 ` valgrind warnings [Re: Emacs bzr memory footprint] Stefan Monnier
2011-11-04 19:10 ` Dan Nicolaescu
2011-11-04 20:56 ` Paul Eggert
2011-11-05 22:08 ` Dan Nicolaescu
2011-11-06 2:34 ` Paul Eggert
2011-11-06 12:37 ` Dan Nicolaescu
2011-11-07 1:13 ` Paul Eggert
2011-10-29 9:10 ` Eli Zaretskii
2011-10-22 8:44 ` Emacs bzr memory footprint Sven Joachim
2011-10-22 11:57 ` Carsten Mattner
2011-10-23 18:04 ` Stefan Monnier
2011-10-25 17:35 ` Nix
2011-10-25 20:23 ` Stefan Monnier
2011-10-25 20:34 ` Nix
2011-10-26 14:52 ` gnutls memory leak [Was: Re: Emacs bzr memory footprint] Chong Yidong
2011-10-27 6:10 ` Chong Yidong
2011-10-27 22:01 ` Ted Zlatanov
2011-10-28 12:04 ` Ted Zlatanov
2011-10-28 17:29 ` Nix
2011-10-27 22:03 ` Ted Zlatanov
2011-10-13 21:23 ` Emacs bzr memory footprint Dan Nicolaescu
2011-10-14 13:04 ` Carsten Mattner
2011-10-14 18:13 ` James Cloos
2011-10-17 20:52 ` Juri Linkov
2011-10-17 23:34 ` James Cloos
2011-10-18 7:24 ` Andreas Schwab
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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87obxakx9l.fsf@spindle.srvr.nix \
--to=nix@esperi.org.uk \
--cc=dmantipov@yandex.ru \
--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 public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).