GNU bug report logs - #41194
28.0.50; [feature/native-comp] fibn benchmark exhausts memory

Previous Next

Package: emacs;

Reported by: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>

Date: Mon, 11 May 2020 20:49:01 UTC

Severity: normal

Found in version 28.0.50

Done: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


Message #20 received at 41194 <at> debbugs.gnu.org (full text, mbox):

From: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>
To: Andrea Corallo <akrl <at> sdf.org>
Cc: 41194 <at> debbugs.gnu.org
Subject: Re: bug#41194: 28.0.50; [feature/native-comp] fibn benchmark
 exhausts memory
Date: Sun, 14 Jun 2020 17:19:29 +0200
[Message part 1 (text/plain, inline)]
Andrea Corallo <akrl <at> sdf.org> writes:

> 5a55a845a7 * Implement 'maybe_gc_or_quit' to allow correct GC in compiled Lisp
> 34ed9d2498 * Introduce latches
>
> are fixing here this issue, now running fibn at speed 2 the memory
> consuptions stays constant.

Alright, feedback time!

Commits:
- master: 82a632edc8b80bf16d9b9f205474bf9724b084c0
- feature/native-comp: 5a55a845a7c426e82e8a6a6d02bc4a39992871e3


The Good News
=============

- I can compile the branch without adding files to the default
  blacklist,

- compilation (-j1) now only takes less than 6 hours instead of 3 days
  (compared with 1.5 hour on master),

- at no point during compilation did the system swap; in fact, I could
  probably have risked a -j2 build,

- elisp-benchmarks doesn't show any obvious performance regression
  (… though see Bad News).

For details on memory usage during compilation, see attached memory
profile (to compare with bug#41077#28).

[compilation-memory.pdf (application/pdf, attachment)]
[Message part 3 (text/plain, inline)]
Few files take more than 3 minutes to compile now:

ELC+ELN emacs-lisp/comp.el      0:09:49
ELC+ELN org/org.el              0:03:39
ELC+ELN ../lisp/window.el       0:03:16
ELC+ELN emacs-lisp/bytecomp.el  0:03:16

For details on performance, see attached tables for master and
feature/native-comp, respectively (to compare with bug#41077#40).

[perfs.org (text/x-org, attachment)]
[Message part 5 (text/plain, inline)]

The Bad News
============

- fibn still exhausts memory,
- now pidigits does too.

[fibn.pdf (application/pdf, attachment)]
[pidigits.pdf (application/pdf, attachment)]
[Message part 8 (text/plain, inline)]
I've only tried the default comp-speed (2) so far.  I've attached the
results of M-x disassemble on the functions in fibn.el and pidigits.el.

[elb-eliminate-digit.s (text/x-asm, attachment)]
[elb-extract-digit.s (text/x-asm, attachment)]
[elb-fibn.s (text/x-asm, attachment)]
[elb-fibn-entry.s (text/x-asm, attachment)]
[elb-next-term.s (text/x-asm, attachment)]
[elb-pidigits.s (text/x-asm, attachment)]
[elb-pidigits-entry.s (text/x-asm, attachment)]
[Message part 16 (text/plain, inline)]
Let me know what I can do to help diagnose this further.  Again, thank
you for the time spent on this issue!

This bug report was last modified 4 years and 344 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.