From: ludo@gnu.org (Ludovic Courtès)
To: Andy Wingo <wingo@pobox.com>
Cc: guile-devel@gnu.org, Neil Jerram <neil@ossau.uklinux.net>
Subject: Re: [PATCH] Configure GMP to use GC allocation functions, remove bignum finalizers
Date: Tue, 29 Nov 2011 14:18:40 +0100 [thread overview]
Message-ID: <877h2jf4nj.fsf@gnu.org> (raw)
In-Reply-To: <874nxn9jwx.fsf@pobox.com> (Andy Wingo's message of "Tue, 29 Nov 2011 13:45:34 +0100")
Hey!
Andy Wingo <wingo@pobox.com> skribis:
> On Tue 29 Nov 2011 12:06, ludo@gnu.org (Ludovic Courtès) writes:
>
>> Could you run the stuff under gc-benchmarks/ with and without the
>> heuristic, as in [0]?
>>
>> [0] http://thread.gmane.org/gmane.lisp.guile.devel/7803
IIRC the “Guile” lines below correspond to whatever guile is in $PATH.
Do you know what that is in your case?
> Adding a FSD=2 entry:
>
> benchmark: `gc-benchmarks/gcbench.scm'
> heap size (MiB) execution time (s.)
> Guile 53.17 (1.00x) 1.965 (1.00x)
> BDW-GC, FSD=2 55.76 (1.05x) 1.953 (0.99x) -
> BDW-GC, FSD=3 44.94 (0.85x) 2.017 (1.03x) ++
> BDW-GC, FSD=6 37.74 (0.71x) 2.361 (1.20x) ++++
> BDW-GC, FSD=9 37.77 (0.71x) 2.913 (1.48x) ++++
> BDW-GC, FSD=2 incr. 54.32 (1.02x) 2.049 (1.04x)
> BDW-GC, FSD=3 incr. 51.21 (0.96x) 2.164 (1.10x) +
> BDW-GC, FSD=3 gene. 54.50 (1.02x) 2.131 (1.08x)
>
> benchmark: `gc-benchmarks/string.scm'
> heap size (MiB) execution time (s.)
> Guile 356.60 (1.00x) 0.564 (1.00x)
> BDW-GC, FSD=2 380.20 (1.07x) 0.498 (0.88x) -
> BDW-GC, FSD=3 265.62 (0.74x) 0.463 (0.82x) ++++
> BDW-GC, FSD=6 319.94 (0.90x) 0.485 (0.86x) ++
> BDW-GC, FSD=9 318.98 (0.89x) 0.489 (0.87x) ++
> BDW-GC, FSD=2 incr. 477.82 (1.34x) 0.624 (1.11x) -----
> BDW-GC, FSD=3 incr. 418.91 (1.17x) 0.643 (1.14x) ---
> BDW-GC, FSD=3 gene. 338.70 (0.95x) 0.615 (1.09x) +
>
> Win!
Yeah, looks pleasant! :-)
The funny thing is that the initial FSD (which is what is shown here)
has an impact, although one might think the initial value doesn’t matter
much since adjust_gc_something changes it anyway.
The other interesting thing is that it seems to be noticeably better,
even on pure Scheme code–i.e., code that only does GC_malloc, not
malloc.
Thanks,
Ludo’.
next prev parent reply other threads:[~2011-11-29 13:18 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-31 19:48 [PATCH] Configure GMP to use GC allocation functions, remove bignum finalizers Mark H Weaver
2011-05-31 20:07 ` Mark H Weaver
2011-05-31 21:52 ` Ludovic Courtès
2011-05-31 23:18 ` Neil Jerram
2011-05-31 23:32 ` Neil Jerram
2011-06-01 8:34 ` Andy Wingo
2011-06-02 23:14 ` Ludovic Courtès
2011-11-27 19:33 ` Andy Wingo
2011-11-27 21:25 ` Ludovic Courtès
2011-11-28 22:23 ` Andy Wingo
2011-11-28 23:10 ` Ludovic Courtès
2011-11-28 23:50 ` Andy Wingo
2011-11-29 11:06 ` Ludovic Courtès
2011-11-29 11:35 ` Andy Wingo
2011-11-29 13:20 ` Ludovic Courtès
2011-11-29 12:45 ` Andy Wingo
2011-11-29 13:18 ` Ludovic Courtès [this message]
2011-11-29 14:44 ` Andy Wingo
2011-11-29 16:22 ` Ludovic Courtès
2011-12-02 11:10 ` Andy Wingo
2011-12-02 17:02 ` Ludovic Courtès
2011-12-02 18:12 ` Andy Wingo
2011-12-02 22:17 ` Ludovic Courtès
2011-12-03 10:57 ` Andy Wingo
2011-12-03 17:57 ` Ludovic Courtès
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/guile/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=877h2jf4nj.fsf@gnu.org \
--to=ludo@gnu.org \
--cc=guile-devel@gnu.org \
--cc=neil@ossau.uklinux.net \
--cc=wingo@pobox.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.
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).