guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Configure GMP to use GC allocation functions, remove bignum


From: Andy Wingo
Subject: Re: [PATCH] Configure GMP to use GC allocation functions, remove bignum finalizers
Date: Tue, 29 Nov 2011 12:35:26 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux)

On Tue 29 Nov 2011 12:06, address@hidden (Ludovic Courtès) writes:

> RET should never be left uninitialized, and the caller should be
> prepared to deal with RET == 0.

Oops, will fix.

> (The code itself doesn’t have to #ifdef __linux__ because other OSes
> provides an implementation that mimics Linux’s /proc.)

Interesting, didn't know that.  In any case it should DTRT if statm
isn't there.

> My impression was that FREE_SPACE_DIVISOR was quite coarse-grain.
> What’s your experience with that?

It has varying precision.  For example in the (factorial 100000)
example, it gets to 1800 at some point.  Quantizing the
target_free_space_divisor is an issue.

> Could you run the stuff under gc-benchmarks/ with and without the
> heuristic, as in [0]?

Sure.

> Also, could you check with a program that actually mixes malloc +
> GC-alloc how it behaves?

Does the factorial example not count?

> I tried to reproduce the infamous iconv issue, which would have been a
> simple way to check, but failed:
>
>   (with-fluids ((%default-port-encoding "UTF-16BE"))
>     (let loop () (open-output-string ) (loop)))
>
> Memory growth appears to be bounded here.

What do you mean?  Do you mean that this patch fixes the iconv issue, or
that you couldn't reproduce it before?

Regards,

Andy
-- 
http://wingolog.org/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]