caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Thomas Fischbacher <tf@functionality.de>
To: Caml mailing list <caml-list@yquem.inria.fr>
Subject: Marshalling problem?
Date: Thu, 28 Feb 2008 20:46:08 +0000	[thread overview]
Message-ID: <47C71D90.9050308@functionality.de> (raw)


I encounter a rather weird problem when marshalling a complicated highly
networked data structure to send it over the net (yes, it's brute, but
that allows me to get an issue solved very quickly which I will refine
later on in the future).

Basically, the actual sending of a large chunk of data over the net
(using MPI_Send/MPI_Recv and serialization) works fine. But the
deserialisation seems to get in trouble (on x86-32) when the data
is more than 16 MB. Strange enough, If I do not rely on CamlMPI's
internal serialization of ML values, but do this of my own and
serialize to a bigarray beforehand, the process that just has
serialized the data can deserialize it again. If I load that data
into some other process - either via the net or by intermediately
writing to a file, I get either a segfault or an internal failure
exception from the deserializer.

Seems as if some initialization may have been omitted somewhere which
gets done by first using the serializer...

I put an image file (large) as well as some code to demonstrate the
deserialization problem on the web at:

http://nmag.soton.ac.uk/tf/ocaml-marshal/

The ba.master data array just contains that data that were sent across
the network by my master MPI process, and received in the same form by
my slave MPI process.

Now I am not 100% sure yet I identified the problem correctly  --
but I am about 90% confident by now.

Oh, by the way, this is using 3.09.2.

-- 
best regards,
Thomas Fischbacher
t.fischbacher@soton.ac.uk


                 reply	other threads:[~2008-02-28 20:35 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=47C71D90.9050308@functionality.de \
    --to=tf@functionality.de \
    --cc=caml-list@yquem.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).