guile-devel
[Top][All Lists]
Advanced

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

Re: Guile 2.0 eating memory on ARM


From: Neil Jerram
Subject: Re: Guile 2.0 eating memory on ARM
Date: Thu, 31 Mar 2011 22:36:57 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)

address@hidden (Ludovic Courtès) writes:

> Hello Neil,
>
> Neil Jerram <address@hidden> writes:
>
>> I think I've successfully cross-compiled Guile (stable-2.0, e309f3bf9e)
>> for my Freerunner phone.  However, when I run it, it just keeps
>> allocating memory until the OOM killer kills it:
>
> How much RAM does it have?

About 126Mb NAND, optionally plus 512Mb more SD card swap.  But I think
the behaviour was the same with and without the swap; with the swap it
just took longer before the OOM killer killed it.

>  What is Guile doing when it gets killed?  Is
> it running a program or just trying to get to the REPL?

Well, I tried once with `guile -c 3', i.e. just trying to evaluate `3',
and once with `guile', i.e. getting to the REPL.  I don't think it got
as far as where those two possibilities fork.

>> - Following the discussion about a cross version of `guile-tools
>>   compile', I realized that the Freerunner ARM platform is
>>   little-endian, and hence the .go files should be identical to those
>>   for x86.  Therefore, although I was going to look at adding a target
>>   type in the way that Ludo and Andy agreed, I don't actually need to do
>>   that yet.
>>
>>   (Is that right?
>
> I think so.

Thanks.

>>   In any case, it definitely isn't relevant to the memory eating
>>   problem, because the strace shows that guile hasn't yet tried to
>>   open any .scm or .go files.)
>
> Woow, really?  Then can you start it directly under gdb and interrupt it
> quickly after to see what’s going on?

Yes, I'll do that.  I also should try with libgc CVS, instead of my
current 7.2alpha4.

> FWIW it runs on my GuruPlug, an ARM device, but that one has 512 MiB of RAM.

If it's easy for you to find out, (i) what version of libgc are you
using there, and (ii) how much memory does Guile use to execute `guile
-c 3' or `guile'?

Another possibility is that the problem is ARM version-dependent.  Mine
is armv4t, which I understand is now a bit old.

Thanks for your input!

     Neil



reply via email to

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