From: Ihor Radchenko <yantar92@posteo.net>
To: Eli Zaretskii <eliz@gnu.org>
Cc: arne_bab@web.de, spacibba@aol.com, emacs-devel@gnu.org
Subject: Re: Indentation and gc
Date: Sun, 12 Mar 2023 14:20:33 +0000 [thread overview]
Message-ID: <871qluuk3y.fsf@localhost> (raw)
In-Reply-To: <83a60jwf9l.fsf@gnu.org>
[-- Attachment #1: Type: text/plain, Size: 1365 bytes --]
Eli Zaretskii <eliz@gnu.org> writes:
> I'm talking about basis for the 0.7% figure.
I used 0.7%*RAM because total RAM is the only reasonable metrics. What
else can we use to avoid memory over-consumption on low-end machines?
Of course, I used implicit assumption that memory usage will scale with
gc-cons-threshold linearly. IMHO, it is a safe assumption - the real
memory usage increase is slower than linear. For example, see my Emacs
loading data for different threshold values:
| gc-cons-threshold | memory-limit | gcs-done | gc-elapsed | gc time |
| 1Mb | 523704 | 394 | 25.809423617 | 0.065506151 |
| 2Mb | +9624 | 210 | 13.41456755 | 0.063878893 |
| 4Mb | +1224 | 109 | 6.400488833 | 0.058720081 |
| 8Mb | +3164 | 63 | 3.223383144 | 0.051164812 |
| 16Mb | +5532 | 37 | 1.757097776 | 0.047489129 |
| 32Mb | +20264 | 25 | 0.995694149 | 0.039827766 |
| 64Mb | +59860 | 19 | 0.624039941 | 0.032844207 |
| 128Mb | +115356 | 16 | 0.42626893 | 0.026641808 |
| 256Mb | +171176 | 14 | 0.277912281 | 0.019850877 |
| 512Mb | +332148 | 12 | 0.122461442 | 0.010205120 |
Also, see the attached graph.
[-- Attachment #2: benchmark-gc.png --]
[-- Type: image/png, Size: 33637 bytes --]
[-- Attachment #3: Type: text/plain, Size: 751 bytes --]
The 0.7% is to ensure safe 800kb lower bound on low-end computers.
> Anyway, how about if you try running with the threshold you think we
> should adopt, and report back after a month or so, say?
I am using 250Mb threshold for the last 3 years or so.
GCs are sometimes noticeable, but not annoying:
- gc-elapsed 297 sec / gcs-done 290 -> ~1 sec per GC
- Emacs uptime 2 days 5 hours 21 minutes -> 1 GC per 10 minutes
- memory-limit 6,518,516, stable
37x from Emacs -Q memory-limit
10x from Emacs loading with my init.el
--
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>
next prev parent reply other threads:[~2023-03-12 14:20 UTC|newest]
Thread overview: 99+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20230310110747.4hytasakomvdyf7i.ref@Ergus>
2023-03-10 11:07 ` Indentation and gc Ergus
2023-03-10 14:36 ` Dr. Arne Babenhauserheide
2023-03-10 14:54 ` Eli Zaretskii
2023-03-10 19:23 ` Dr. Arne Babenhauserheide
2023-03-11 6:38 ` Eli Zaretskii
2023-03-11 6:55 ` Dr. Arne Babenhauserheide
2023-03-11 7:56 ` Eli Zaretskii
2023-03-11 12:34 ` Dr. Arne Babenhauserheide
2023-03-11 13:08 ` Eli Zaretskii
2023-03-11 13:31 ` Ihor Radchenko
2023-03-11 13:44 ` Eli Zaretskii
2023-03-11 13:53 ` Ihor Radchenko
2023-03-11 14:09 ` Eli Zaretskii
2023-03-12 14:20 ` Ihor Radchenko [this message]
2023-03-12 14:40 ` Eli Zaretskii
2023-03-12 15:04 ` Ihor Radchenko
2023-03-12 15:26 ` Eli Zaretskii
2023-03-13 15:09 ` Ihor Radchenko
2023-03-13 15:37 ` Eli Zaretskii
2023-03-13 15:45 ` Ihor Radchenko
2023-03-13 16:58 ` Eli Zaretskii
2023-03-13 18:04 ` Ihor Radchenko
2023-03-14 12:19 ` Eli Zaretskii
2023-03-15 10:28 ` Ihor Radchenko
2023-03-15 12:54 ` Eli Zaretskii
2023-03-15 12:59 ` Ihor Radchenko
2023-03-15 14:20 ` Eli Zaretskii
2023-03-16 10:27 ` Ihor Radchenko
2023-04-06 9:13 ` Ihor Radchenko
2023-04-08 8:04 ` Eli Zaretskii
2023-04-08 8:15 ` Ihor Radchenko
2023-04-08 10:03 ` Eli Zaretskii
2023-04-14 17:07 ` Ihor Radchenko
2023-04-14 17:56 ` Eli Zaretskii
2023-03-13 18:14 ` Gregor Zattler
2023-03-14 12:30 ` Eli Zaretskii
2023-03-14 15:19 ` Gregor Zattler
2023-03-11 16:19 ` Dr. Arne Babenhauserheide
2023-03-12 13:27 ` Ihor Radchenko
2023-03-12 14:10 ` Eli Zaretskii
2023-03-12 14:50 ` Ihor Radchenko
2023-03-12 15:13 ` Eli Zaretskii
2023-03-12 17:15 ` Gregor Zattler
2023-03-12 20:07 ` Eli Zaretskii
2023-03-13 15:01 ` Ihor Radchenko
2023-03-13 15:33 ` Eli Zaretskii
2023-03-13 15:39 ` Ihor Radchenko
2023-03-13 15:39 ` Eli Zaretskii
2023-03-13 16:04 ` Ihor Radchenko
2023-03-13 16:52 ` Eli Zaretskii
2023-03-14 12:47 ` Ihor Radchenko
2023-03-14 13:09 ` Eli Zaretskii
2023-03-15 10:29 ` Ihor Radchenko
2023-03-13 15:41 ` Eli Zaretskii
2023-03-14 13:01 ` Ihor Radchenko
2023-03-11 10:54 ` Ihor Radchenko
2023-03-11 11:17 ` Ergus
2023-03-11 11:23 ` Ihor Radchenko
2023-03-11 12:31 ` Eli Zaretskii
2023-03-11 12:39 ` Ihor Radchenko
2023-03-11 12:40 ` Eli Zaretskii
2023-03-11 12:54 ` Ihor Radchenko
2023-03-11 13:01 ` Dr. Arne Babenhauserheide
2023-03-11 13:14 ` Eli Zaretskii
2023-03-11 13:38 ` Ihor Radchenko
2023-03-11 13:46 ` Eli Zaretskii
2023-03-11 13:54 ` Ihor Radchenko
2023-03-11 14:11 ` Eli Zaretskii
2023-03-11 14:18 ` Ihor Radchenko
2023-03-11 14:20 ` Eli Zaretskii
2023-03-11 14:31 ` Ihor Radchenko
2023-03-11 15:32 ` Eli Zaretskii
2023-03-11 15:52 ` Lynn Winebarger
2023-03-11 16:24 ` Eli Zaretskii
2023-03-11 17:10 ` Gregor Zattler
2023-03-11 17:25 ` Eli Zaretskii
2023-03-11 18:35 ` Gregor Zattler
2023-03-11 18:49 ` Eli Zaretskii
2023-03-13 12:45 ` Ihor Radchenko
2023-03-13 12:51 ` Eli Zaretskii
2023-06-14 14:16 ` Ihor Radchenko
2023-06-14 15:36 ` Eli Zaretskii
2023-06-14 15:58 ` Ihor Radchenko
2023-06-14 16:07 ` Eli Zaretskii
2023-06-16 10:00 ` Ihor Radchenko
2023-06-16 10:33 ` Eli Zaretskii
2023-06-16 11:03 ` Ihor Radchenko
2023-06-16 11:34 ` Eli Zaretskii
2023-06-21 10:37 ` Ihor Radchenko
2023-06-21 11:11 ` Eli Zaretskii
2023-03-11 13:00 ` Po Lu
2023-03-11 12:37 ` Eli Zaretskii
2023-03-11 13:10 ` Ihor Radchenko
2023-03-11 13:38 ` Eli Zaretskii
2023-03-10 14:52 ` Eli Zaretskii
2023-03-10 21:30 ` Ergus
2023-03-11 6:52 ` Eli Zaretskii
2023-03-21 7:11 ` Jean Louis
2023-03-21 7:27 ` Emanuel Berg
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=871qluuk3y.fsf@localhost \
--to=yantar92@posteo.net \
--cc=arne_bab@web.de \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=spacibba@aol.com \
/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.