From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id p2PINuwW030490 for ; Fri, 25 Mar 2011 19:23:58 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Aq8CAJjdjE1CbwQbkWdsb2JhbACERZQcjQAUAQEBAQkLCwcUBCGITapFkRcFgSeDS3eFPosP X-IronPort-AV: E=Sophos;i="4.63,244,1299452400"; d="scan'208";a="103552541" Received: from out3.smtp.messagingengine.com ([66.111.4.27]) by mail1-smtp-roc.national.inria.fr with ESMTP/TLS/ADH-AES256-SHA; 25 Mar 2011 19:23:53 +0100 Received: from compute3.internal (compute3.nyi.mail.srv.osa [10.202.2.43]) by gateway1.messagingengine.com (Postfix) with ESMTP id 0E802205B4 for ; Fri, 25 Mar 2011 14:23:53 -0400 (EDT) Received: from frontend2.messagingengine.com ([10.202.2.161]) by compute3.internal (MEProxy); Fri, 25 Mar 2011 14:23:53 -0400 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=messagingengine.com; h=message-id:date:from:mime-version:to:subject:references:in-reply-to:content-type:content-transfer-encoding; s=smtpout; bh=l8CuNv74D/AfOCJY1rX5LC/Bj5c=; b=PkE9bWNQykOrGNOiWlmRZBmbbaK9gv1TeEAqcQPIoh+jIVxNR/MvYwYGTWYUx3xWKxG22QwSuWL2W3XA+gQzx/TnIrxKaAyGWigXpIwwYwJRR/gOaDdff98rzQd5dJi2QaEnYq6NA6xKYZ0khO75cJuzCNDGZFRwWb80IjhZTQo= X-Sasl-enc: TC2ybmrDu0k20Ul3e107JwAJze9fYgogsqihQAgRgIDs 1301077432 Received: from [192.168.1.206] (64-71-1-165.static.wiline.com [64.71.1.165]) by mail.messagingengine.com (Postfix) with ESMTPSA id B67444476BE for ; Fri, 25 Mar 2011 14:23:52 -0400 (EDT) Message-ID: <4D8CDDCC.4010000@ens-lyon.org> Date: Fri, 25 Mar 2011 11:24:12 -0700 From: Martin Jambon User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.9) Gecko/20101023 Lightning/1.0b3pre Thunderbird/3.1.3 MIME-Version: 1.0 To: caml-list@inria.fr References: <2054357367.219171.1300974318806.JavaMail.root@zmbs4.inria.fr> <4D8BD02D.1010505@inria.fr> <4D8C73C8.6020801@inescporto.pt> <1301055903.8429.314.camel@thinkpad> <341494683.237537.1301057887481.JavaMail.root@zmbs4.inria.fr> <4D8C944A.9060601@inria.fr> <4D8CB859.9040709@inescporto.pt> In-Reply-To: <4D8CB859.9040709@inescporto.pt> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Caml-list] Efficient OCaml multicore -- roadmap? > On 03/25/2011 01:10 PM, Fabrice Le Fessant wrote: >> Of course, sharing structured mutable data between threads will not be >> possible, but actually, it is a good thing if you want to write correct >> programs ;-) On 03/25/11 08:44, Hugo Ferreira replied: > I'll stick to my guns here. It simply makes solving certain problem > unfeasible. Point in case: I work on machine learning algorithms. I > use large data-structures that must be processed (altered) > in order to learn. Because these data-structures are large it become > impractical to copy this to a process every time I start off a new > "thread". The solution would be to use get/set via a message-passing interface. >From my purely speculative perspective, it seems unavoidable that message-passing happens at some level in order to keep a shared data structure in sync between a large number of processors. In other words, any access to a shared data structure requires some physical copy no matter what the programming language makes it look like. Martin