[racket-dev] Memory consumption of Racket

From: Kevin Tew (tewk at cs.utah.edu)
Date: Mon Apr 25 22:22:23 EDT 2011

If your willing, we would like to see your code changes/patches get 
integrated back into the project.
This is the best way to get more developers interested and willing to 
work on Racket for iOS.

Are you willing to share your changes?
We are willing to take them in any form, clean them up, and get them 
committed.

Kevin


On 04/25/2011 06:15 PM, Nevo wrote:
> hi Kevin:
>   I've successfully enabled places with a few in-code fix to be 
> compiler happy, mostly are implement atomic operations using 
> OSAtomicXXX provided by Apple and emit arm instruction instead of 
> thumb. It just run without low memory crashes (at least per my recent 
> runs), although still getting a level 1 memory warning which is common 
> for most of complicated softwares in iOS I think. But I would be 
> rather appreciated if you have something else which I can look into by 
> myself to further reduce memory consumption. Thanks!
>
> Cheers
> Nevo
>
> On 23 April 2011 21:24, Nevo <sakur.deagod at gmail.com 
> <mailto:sakur.deagod at gmail.com>> wrote:
>
>     hi Kevin:
>       Thanks for your help here. I'm trying to enable "place" first
>     then I think I can apply your patch. Is there still a way to
>     reduce unused memory as in your patch, but without the need of
>     "place"?
>
>     Nevo
>
>
>     On 23 April 2011 21:16, Kevin Tew <tewk at cs.utah.edu
>     <mailto:tewk at cs.utah.edu>> wrote:
>
>         Here is another patch you can try to reduce caching of unused
>         memory.
>
>         diff --git a/src/racket/gc2/alloc_cache.c
>         b/src/racket/gc2/alloc_cache.c
>         index 44895af..d1f1c03 100644
>         --- a/src/racket/gc2/alloc_cache.c
>         +++ b/src/racket/gc2/alloc_cache.c
>         @@ -10,7 +10,7 @@
>          */
>
>          /* Controls how often freed pages are actually returned to OS: */
>         -#define BLOCKFREE_UNMAP_AGE 3
>         +#define BLOCKFREE_UNMAP_AGE 0
>
>          /* Controls size of the cache */
>          #define BLOCKFREE_CACHE_SIZE 3000
>
>
>
>         On 04/23/2011 05:14 AM, Jens Axel Søgaard wrote:
>
>             2011/4/22 Nevo<sakur.deagod at gmail.com
>             <mailto:sakur.deagod at gmail.com>>:
>
>                 hi
>                   My attempt on porting Racket interpreter to iOS has
>                 been for a while and
>                 I've been able to run interpreter on both iOS device
>                 as well iOS simulator.
>
>             Great news.
>
>                 Right now, it runs perfectly on iOS simulator, but
>                 lack of satisfaction on
>                 device. The reason is for those devices like
>                 iPad/iPhone or Android, the
>                 memory for standalone application is always
>                 constrained, and even a single
>                 "hello world" evaluation would easily put the whole
>                 app runtime to death,
>                 per my test.
>
>             I am curious which iPhone and which iPad?
>
>             For the non-iPad owners here are a few (unofficial) specs,
>             so you
>             have a rough idea of how much memory the iDevices have:
>
>             Internal RAM for:
>               iPad 2            512MB
>               iPad 1            256MB
>
>               iPhone 4         512MB
>               iPhone 3GS    256MB
>               iPhone 3G      128MB
>               iPhone           128MB
>
>
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/dev/archive/attachments/20110425/8ecf5868/attachment-0001.html>

Posted on the dev mailing list.