That stack trace indicates you ran into DCHECK(IsReserved()); in
VirtualMemory::address(). That check would fail if the previous mmap() call
failed to reserve memory, which happens when the process's virtual memory
address space is exhausted.
You didn't specify which V8 version you're using, but chances are it
reserves 16MB of virtual address space for the "new space" part of the
heap. You don't see this show up as consumed memory, because it's not
actually used yet, it's just reserved for future use. Along with some other
memory that's reserved or allocated on startup, I'd estimate about 20MB of
address space per Isolate. 140 Isolates puts you at 2800MB of address space
usage, so it's not surprising that you're running into the system's limits
around that time.

On Thu, Apr 28, 2016 at 5:29 PM, Joris Wijnant <[email protected]>
wrote:

> For some reason can i go to 700MB, instead of the 300MB earlier, but i
> don't know what changed :s
> I'm reaching 140 isolates, which is coming closer, but not enough.
> Also each isolate only contains a few objects, so 10MB should be more than
> enough.
>
> This time it crashes by raising a SIGABRT.
>
> stacktrace at the moment of the crash
>
> > VoxJavascriptTest.exe!v8::base::OS::Abort() Line 835 C++
>   VoxJavascriptTest.exe!V8_Fatal(const char * file, int line, const char
> * format, ...) Line 117 C++
>   VoxJavascriptTest.exe!v8::base::VirtualMemory::address() Line 308 C++
>   
> VoxJavascriptTest.exe!v8::internal::MarkCompactCollector::EnsureMarkingDequeIsCommitted(unsigned
> int max_size) Line 1947 C++
>   VoxJavascriptTest.exe!v8::internal::MarkCompactCollector::SetUp() Line
> 250 C++
>   VoxJavascriptTest.exe!v8::internal::Heap::SetUp() Line 5242 C++
>   VoxJavascriptTest.exe!v8::internal::Isolate::Init(v8::internal::Deserializer
> * des) Line 2217 C++
>   VoxJavascriptTest.exe!v8::Isolate::New(const v8::Isolate::CreateParams
> & params) Line 7229 C++
>
> Op donderdag 28 april 2016 16:25:09 UTC+2 schreef Joris Wijnant:
>
>> Hi,
>>
>> I need to create a total of 200-300 instances of v8::Isolate.
>> each handling the input of a socket and they need to be strictly
>> separated from each other.
>> However the V8 engine crashes after creating 50 of them.
>> Which is around 300MB.
>>
>> The memory limit for v8 should be 700MB for 32 bit, but i don't even
>> reach half of it.
>> so that seems strange to me.
>>
>> I tried using --max-old-space-size=2000, but that did not change anything.
>>
>> What do I need to do, to create those 200 instances of v8::Isolate?
>>
>> kr,
>> joris
>>
> --
> --
> v8-users mailing list
> [email protected]
> http://groups.google.com/group/v8-users
> ---
> You received this message because you are subscribed to the Google Groups
> "v8-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
-- 
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users
--- 
You received this message because you are subscribed to the Google Groups 
"v8-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to