On Fri, 2025-02-21 at 09:23 +0100, Sven Hartrumpf wrote:
> Dear Guile users.
> 
> I am looking for GC-oriented benchmarks, preferably portable Scheme code.
> 
> Why am I asking?
> I am investigating a regression in GC time (bdw-gc) for many days,
> but my application seems to be too complex for me to unterstand the cause:-)
> Hence I am looking for simpler code that can reproduce the issue.
> Currently in my (too complex) "benchmark" application,
> the GC collects 70 GB collected in 200 collections.
> The simple benchmark(s) I am looking for can be smaller, but not too much.
> 
> It seems to be caused by stepping from gcc-11 (or older) to gcc-12 (or newer),
> but only for the x32 ABI - https://en.wikipedia.org/wiki/X32_ABI - so far.


A possibility might be to switch to another GC or another Scheme implementation.

Are you aware of the Qish GC on http://starynkevitch.net/basile/qishintro.html
or the Bigloo Scheme implementation on https://www-sop.inria.fr/indes/fp/Bigloo/
or the MPS garbage collector on https://github.com/Ravenbrook/mps and
https://www.ravenbrook.com/project/mps/
or https://pages.lip6.fr/Christian.Queinnec/WWW/LiSP.html
or https://github.com/pahihu/libscheme

BTW the GCC compiler itself (it current version is GCC-14) has a garbage
collector inside it:https://gcc.gnu.org/wiki/gengtype
https://arxiv.org/abs/1109.0779
and the C++ code (GPL licensed) on https://github.com/RefPerSys/RefPerSys/
contains a GC and could be extended to become a Scheme implementation 

regards


-- 
Basile STARYNKEVITCH           <bas...@starynkevitch.net>
8 rue de la Faïencerie
92340 Bourg-la-Reine,          France
http://starynkevitch.net/Basile & https://github.com/bstarynk 

Reply via email to