caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Gerd Stolpmann <info@gerd-stolpmann.de>
To: Anders Fugmann <anders@fugmann.net>
Cc: caml-list <caml-list@inria.fr>
Subject: Re: [Caml-list] Netmcore problems.
Date: Fri, 13 Jan 2012 18:06:50 +0100	[thread overview]
Message-ID: <1326474410.14288.116.camel@thinkpad> (raw)
In-Reply-To: <4F105C34.3010207@fugmann.net>

Am Freitag, den 13.01.2012, 17:30 +0100 schrieb Anders Fugmann:
> Hi,
> 
> I'm having a problem using netmcore from ocamlnet 3.4 library.
> 
> When I try to place a large data structure into Netmcore_array, the 
> controlling process dies with the following error:
> 
> [Fri Jan 13 16:21:38 2012] [netplex.controller] [alert] Process 28067 
> for service netmcore_0 terminated with signal 7

That's sigbus. You get it when the OS does not have memory anymore - but
not when the memory is allocated, but first when it is filled with data.
You can change this by disallowing that memory is overcommitted (set the
kernel param vm.overcommit_memory to 1 or even 2).

> The error occurs while trying to initialise a Netmcore_array from an 
> array of 4*10^6 strings all of length 150. This is done in the context 
> of the "first" process.
> 
> The controlling process initializes a memory pool by using
> 
>    let pool_id = Netmcore_mempool.create_mempool (1024 * 1024 * 1024 * 
> 10) in
> 
> Running the code on a smaller dataset seems to work.
> 
> I have increased kernel variables shmall and shmmax to very high numbers 
> (100Gb), but it does not solve the problem.

No, this cannot solve it. These variables only control System V shared
memory, but Netmcore uses POSIX shared memory. On Linux, you can change
the max of this memory by re-mounting /dev/shm, e.g.

mount -o remount,size=80% /dev/shm

The default is 50% of available RAM.

> All ideas are welcome.
> 
> On other question while I'm at it; am I allowed to create multiple 
> shared arrays from the same memory pool, or do I need to create one pool 
> for each shared array?

The pools can be shared.

Gerd

> 
> Regards
> Anders Fugmann
> 
> 
> 

-- 
------------------------------------------------------------
Gerd Stolpmann, Darmstadt, Germany    gerd@gerd-stolpmann.de
Creator of GODI and camlcity.org.
Contact details:        http://www.camlcity.org/contact.html
Company homepage:       http://www.gerd-stolpmann.de
*** Searching for new projects! Need consulting for system
*** programming in Ocaml? Gerd Stolpmann can help you.
------------------------------------------------------------


  reply	other threads:[~2012-01-13 17:06 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-13 16:30 Anders Fugmann
2012-01-13 17:06 ` Gerd Stolpmann [this message]
2012-01-16 17:46   ` Anders Fugmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1326474410.14288.116.camel@thinkpad \
    --to=info@gerd-stolpmann.de \
    --cc=anders@fugmann.net \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).