> 1) should I change just those values on the code and recompile?
> 2) Is there a proper API to change that at runtime?

You can use --max-old-space-size=900 instead of recompiling.

Alternatively look at v8::SetResourceConstraints method.

> 3) What is the maximum value that could possibly work considering a
modern 32-bits system? (2GB, 3GB, 4GB, ..., 64GB?)

1GB.

> 4) Why this limitation?

There are certain assumptions built into GC and memory management routines.

More details are available in
http://code.google.com/p/v8/issues/detail?id=847

--
Vyacheslav Egorov


On Mon, Jul 11, 2011 at 8:51 PM, Allan Douglas R. de Oliveira <
allandoug...@gmail.com> wrote:

> Hello,
>
> I'm getting some problems while trying to parse big amounts of data.
> My V8-based program crashes after reaching ~512MB  of memory usage (on
> 2GB RAM Windows XP system), with:
>
> # Fatal error in CALL_AND_RETRY_2
> # Allocation failed - process out of memory
>
> Searching around and guessing I found out that this may be related to
> this lines on heap.cc, specially the max_old_generation_size:
> (...)
> #else
>      reserved_semispace_size_(8*MB),
>      max_semispace_size_(8*MB),
>      initial_semispace_size_(512*KB),
>      max_old_generation_size_(512*MB),
>      max_executable_size_(128*MB),
>      code_range_size_(0),
> #endif
> (...)
>
> So my questions are:
> 1) should I change just those values on the code and recompile?
> 2) Is there a proper API to change that at runtime?
> 3) What is the maximum value that could possibly work considering a
> modern 32-bits system? (2GB, 3GB, 4GB, ..., 64GB?)
> 4) Why this limitation?
>
> Thanks,
> Allan
>
> --
> v8-users mailing list
> v8-users@googlegroups.com
> http://groups.google.com/group/v8-users
>

-- 
v8-users mailing list
v8-users@googlegroups.com
http://groups.google.com/group/v8-users

Reply via email to