From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id p2OFmZ15029279 for ; Thu, 24 Mar 2011 16:48:35 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AhwCABYEi03U4xEKkWdsb2JhbACERKEFFAEBAQEJCwsHFAMisT6RGgKBJYNLdwSIKogX X-IronPort-AV: E=Sophos;i="4.63,237,1299452400"; d="scan'208";a="94787435" Received: from moutng.kundenserver.de ([212.227.17.10]) by mail2-smtp-roc.national.inria.fr with ESMTP; 24 Mar 2011 16:48:30 +0100 Received: from office1.lan.sumadev.de (dslb-188-097-066-234.pools.arcor-ip.net [188.97.66.234]) by mrelayeu.kundenserver.de (node=mreu2) with ESMTP (Nemesis) id 0LoMUn-1PVfsa2r3R-00g9RC; Thu, 24 Mar 2011 16:48:29 +0100 Received: from [192.168.1.111] (546BE640.cm-12-4d.dynamic.ziggo.nl [84.107.230.64]) by office1.lan.sumadev.de (Postfix) with ESMTPA id 4DB485F701; Thu, 24 Mar 2011 16:48:29 +0100 (CET) From: Gerd Stolpmann To: Guillaume Yziquel Cc: Joel Reymont , Alexy Khrabrov , caml-list In-Reply-To: <20110324152835.GF10028@localhost> References: <4587C749-DEFE-47B9-8D9A-44FE5980B58F@gmail.com> <1300978675.8429.227.camel@thinkpad> <6C1E9880-E792-4496-A906-34D8B7ABEBC1@gmail.com> <20110324152835.GF10028@localhost> Content-Type: text/plain; charset="UTF-8" Date: Thu, 24 Mar 2011 16:48:27 +0100 Message-ID: <1300981707.8429.266.camel@thinkpad> Mime-Version: 1.0 X-Mailer: Evolution 2.28.1 X-Provags-ID: V02:K0:pz0Gx2FxZMJnOtYyeu28Y9UT8Q2Gjhzih4na+TN9zTX XYJNxltf1olVpXz1/Kjzq55HqD1RdqIzx98L9jjXTXrdkVoxE1 4cpsHoOclPfxVoOYL2SK9gDmBx+ARsMknwE7z5rb0iO2HAodcF jkReeKf5dGoAIP0okyiXxoRg47RjRTa2uTUtbQbv1snbVA4OkM kgRixm4OsYZ4IjV1QNlKw== Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by walapai.inria.fr id p2OFmZ15029279 Subject: Re: [Caml-list] Efficient OCaml multicore -- roadmap? Am Donnerstag, den 24.03.2011, 16:28 +0100 schrieb Guillaume Yziquel: > Le Thursday 24 Mar 2011 à 15:03:18 (+0000), Joel Reymont a écrit : > > I'm using a combination of OCaml and ZeroMQ which allows for many combinations of workers, routers, dispatchers, etc. > > > > Works for me and I recommend it. > > How does ZeroMQ pertain to shared memory? > > Gerd: Do you plan to include transactional shared memory in the explicit > shared memory datastructure you implemented? Well, the first goal is to allow some form of garbage collection. Right now you can only move ocaml values to shared memory, but there is no way to know whether it is still referenced. There will probably some way of putting a transaction manager on top of this, but again everything is explicit. E.g. you could have a hashtable mapping transaction IDs to values, and first when a worker has produced a complete value, it is added to this hashtable. A commit would have to check whether the input transactions are still the same. So, yes, some room for experimentation here at least. But don't expect something working or something automatic. Gerd -- ------------------------------------------------------------ Gerd Stolpmann, Bad Nauheimer Str.3, 64289 Darmstadt,Germany gerd@gerd-stolpmann.de http://www.gerd-stolpmann.de Phone: +49-6151-153855 Fax: +49-6151-997714 ------------------------------------------------------------