<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE message PUBLIC
  "-//MLarc//DTD MLarc output files//EN"
  "../../mlarc.dtd"[
  <!ATTLIST message
    listname CDATA #REQUIRED
    title CDATA #REQUIRED
  >
]>

  <?xml-stylesheet href="../../mlarc.xsl" type="text/xsl"?>


<message 
  url="2009/10/886ee204b45d5818a21d34a4634832b9"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-10-10T04:01:03"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures"
  prev="2009/10/2a3b947aa9b77f6b0e4558b8fd0b4984"
  next="2009/10/e7f2f5d4e0ff800e2527d4e93fdbed96"
  prev-in-thread="2009/09/919832e65f7ac8483ee2bcac1a848fc8"
  next-in-thread="2009/09/af22b9fa0256cad7adfa660790349c37"
  prev-thread="2009/09/b22215084dd0731e12ddd4cc8c84bb62"
  next-thread="2009/09/73ef227324d51c3763375d0428a2233a"
  root="../../"
  period="month"
  listname="caml-list"
  title="Archives of the Caml mailing list">

<thread subject="OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/61cc61b6b3762a3eed035c7aa3787159"
  from="Philippe Wang &lt;philippe.wang@l...&gt;"
  author="Philippe Wang"
  date="2009-09-22T21:30:57"
  subject="OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/0c24f25736fc9001a1b47ae7b9c6f332"
  from="Goswin von Brederlow &lt;goswin-v-b@w...&gt;"
  author="Goswin von Brederlow"
  date="2009-09-23T10:54:31"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/e8a52461d660687979e9e43dddf1d5f6"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-23T11:10:10"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/98aa6fc39682045838a607934f399fd5"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-23T11:48:50"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/ef98c725c0353c1100dc3d85fa89a991"
  from="Philippe Wang &lt;philippe.wang.lists@g...&gt;"
  author="Philippe Wang"
  date="2009-09-23T14:26:02"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
</msg>
<msg 
  url="2009/09/4705d8edea428247e8feb7f480eb923a"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-23T23:09:58"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/7d176709e35de15d7a1b9665b5e88187"
  from="Philippe Wang &lt;philippe.wang.lists@g...&gt;"
  author="Philippe Wang"
  date="2009-09-23T23:15:15"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/063fd6e92402e34edf2cf7307f2233b3"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-23T23:54:06"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/1332ec20ac972d1385453e370f63db1c"
  from="Philippe Wang &lt;philippe.wang.lists@g...&gt;"
  author="Philippe Wang"
  date="2009-09-24T00:02:01"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/2a9f768dea45fc38e9245f23d79068eb"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-24T01:36:05"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/50522f9af38de43837d1b7b4d1e63b50"
  from="Richard Jones &lt;rich@a...&gt;"
  author="Richard Jones"
  date="2009-09-24T09:49:45"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/c12d9976a94a96af10d0844c9a303498"
  from="rixed@h..."
  author="rixed@h..."
  date="2009-09-24T10:01:36"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
<msg 
  url="2009/09/9730428f959011e2490266a13272fdac"
  from="Florian Hars &lt;hars@b...&gt;"
  author="Florian Hars"
  date="2009-09-24T10:41:45"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
<msg 
  url="2009/09/41e742ac520ed7d707bd71b3d2fcda97"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-24T11:34:07"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
<msg 
  url="2009/09/9c39266c5329a5fa3413ff5ef8966d8a"
  from="kcheung@m..."
  author="kcheung@m..."
  date="2009-09-24T10:01:36"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/9fda87d192bddf23170938cc59f725a3"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-24T11:41:11"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/bb63965e29c3d0096ca0381c6ca9a7f5"
  from="Rakotomandimby Mihamina &lt;mihamina@g...&gt;"
  author="Rakotomandimby Mihamina"
  date="2009-09-24T11:55:22"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
<msg 
  url="2009/09/e30c7432a0ece21c08515b5e3abdf815"
  from="rixed@h..."
  author="rixed@h..."
  date="2009-09-24T12:11:40"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/8186a0191011e8061e142109057d336f"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-24T15:47:11"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
<msg 
  url="2009/09/6f5fbbbacbe07836dbb9828a419d136c"
  from="Stefano Zacchiroli &lt;zack@d...&gt;"
  author="Stefano Zacchiroli"
  date="2009-09-24T12:40:04"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/76002022cfa8a2ffdf438885cf3555d2"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-24T12:58:44"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/56aa8c49b2f3910b38898f8893eb0f0e"
  from="Richard Jones &lt;rich@a...&gt;"
  author="Richard Jones"
  date="2009-09-24T16:49:34"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/9090f269d671a3e190d27c5632f4813d"
  from="Philippe Wang &lt;philippe.wang@l...&gt;"
  author="Philippe Wang"
  date="2009-09-24T16:56:32"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/04ed29c0b8e450c4285c50e8828d4957"
  from="Richard Jones &lt;rich@a...&gt;"
  author="Richard Jones"
  date="2009-09-24T17:36:08"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
<msg 
  url="2009/09/677d91a993915736671ae92df663379a"
  from="rixed@h..."
  author="rixed@h..."
  date="2009-09-24T19:40:03"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
<msg 
  url="2009/09/4142b20dbfa71b8ca87f4d2216034a9c"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-24T20:58:40"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/20a25df3121670378df82ff973f9cdf9"
  from="rixed@h..."
  author="rixed@h..."
  date="2009-09-24T21:26:52"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
<msg 
  url="2009/09/ed65c2b38163cbec9586fc8d15a2e5a4"
  from="Jacques Garrigue &lt;garrigue@m...&gt;"
  author="Jacques Garrigue"
  date="2009-09-25T04:07:32"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/e9f65e653a6fb0aae91d0c7c2556b017"
  from="Hugo Ferreira &lt;hmf@i...&gt;"
  author="Hugo Ferreira"
  date="2009-09-25T07:32:39"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/5f9260874599394a583a5e0f2dedba81"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-25T10:06:27"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/87cea3c575de2f7f1792c39ff9bee794"
  from="kcheung@m..."
  author="kcheung@m..."
  date="2009-09-25T13:04:41"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
<msg 
  url="2009/09/16c870e7360de6376ca051576a5c5c82"
  from="Gerd Stolpmann &lt;gerd@g...&gt;"
  author="Gerd Stolpmann"
  date="2009-09-25T21:34:33"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
<msg 
  url="2009/09/8f2dfaab397b31e0d9aba5dddea17a02"
  from="Philippe Wang &lt;philippe.wang@l...&gt;"
  author="Philippe Wang"
  date="2009-09-25T09:33:42"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
<msg 
  url="2009/09/f5bb7bcf14335898b4937253135552a2"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-25T21:28:27"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/20e821d1bb29973827e6073fda556718"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-26T16:44:36"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
</msg>
<msg 
  url="2009/09/0e76b61fa478a634e45592efdc8e2f20"
  from="Stéphane Glondu &lt;steph@g...&gt;"
  author="Stéphane Glondu"
  date="2009-09-25T08:08:29"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
</msg>
<msg 
  url="2009/09/3423f0063c31979bf8d34d92cfe30398"
  from="Xavier Leroy &lt;Xavier.Leroy@i...&gt;"
  author="Xavier Leroy"
  date="2009-09-25T15:05:08"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/919832e65f7ac8483ee2bcac1a848fc8"
  from="Benjamin Canou &lt;benjamin.canou@g...&gt;"
  author="Benjamin Canou"
  date="2009-09-25T23:26:57"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/10/886ee204b45d5818a21d34a4634832b9"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-10-10T04:01:03"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
<msg 
  url="2009/09/af22b9fa0256cad7adfa660790349c37"
  from="kcheung@m..."
  author="kcheung@m..."
  date="2009-09-26T00:46:07"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/a87fceae0d6c6c80239dae2bd0dcb6df"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-26T01:42:21"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/3317dba80996c542e0d272fd20b239ff"
  from="kcheung@m..."
  author="kcheung@m..."
  date="2009-09-26T13:51:26"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/544edad135c49281f2184fa0a0e4cbbb"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-26T14:35:18"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
</msg>
</msg>
</msg>
</msg>
</msg>
<msg 
  url="2009/09/296983f95b3e973a63c16e3fecef112d"
  from="Rakotomandimby Mihamina &lt;mihamina@g...&gt;"
  author="Rakotomandimby Mihamina"
  date="2009-09-24T13:41:11"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/c3ef5a487e8383a719dad83b82541e5d"
  from="Philippe Wang &lt;philippe.wang.lists@g...&gt;"
  author="Philippe Wang"
  date="2009-09-24T14:22:31"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
<msg 
  url="2009/09/b2b972feb52b3865dd9010b5d09dadbf"
  from="Stefano Zacchiroli &lt;zack@u...&gt;"
  author="Stefano Zacchiroli"
  date="2009-09-24T14:49:39"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
<msg 
  url="2009/09/79d64e8d485a6a5a2e249a52205a40db"
  from="Mike Lin &lt;nilekim@g...&gt;"
  author="Mike Lin"
  date="2009-09-24T14:01:33"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/2be9f618dd2f97a72f7bb562699984d0"
  from="Stefano Zacchiroli &lt;zack@u...&gt;"
  author="Stefano Zacchiroli"
  date="2009-09-24T14:52:20"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
</msg>
<msg 
  url="2009/09/695f99ca82faa78f30fd5e36ce1d0e78"
  from="Philippe Wang &lt;philippe.wang.lists@g...&gt;"
  author="Philippe Wang"
  date="2009-09-24T15:36:19"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/97f73f70033546b2e6fbe292a7b69f90"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-24T15:38:53"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
</msg>
</msg>
<msg 
  url="2009/09/60939d5dd196b7f498c334c7a3bf81c9"
  from="Philippe Wang &lt;philippe.wang.lists@g...&gt;"
  author="Philippe Wang"
  date="2009-09-24T12:14:36"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/08671eca4cb20d16f95870b302a52df3"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-24T13:00:45"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/19275f74f2d789244892421c516b19e9"
  from="Philippe Wang &lt;philippe.wang.lists@g...&gt;"
  author="Philippe Wang"
  date="2009-09-24T14:55:32"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
</msg>
</msg>
</msg>
</msg>
<msg 
  url="2009/09/f536cf377389ef29625bbc1dc8fae0d7"
  from="Philippe Wang &lt;philippe.wang.lists@g...&gt;"
  author="Philippe Wang"
  date="2009-09-24T14:58:41"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
</msg>
</msg>
<msg 
  url="2009/09/bcbeaf3b7b2969d59664e61724b5251d"
  from="Dario Teixeira &lt;darioteixeira@y...&gt;"
  author="Dario Teixeira"
  date="2009-09-24T14:11:26"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/f542e891a44c56e7659941421fc470df"
  from="Philippe Wang &lt;philippe.wang.lists@g...&gt;"
  author="Philippe Wang"
  date="2009-09-24T14:39:40"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/09/99b539260f22706062bd88ec97dd3a3a"
  from="Dario Teixeira &lt;darioteixeira@y...&gt;"
  author="Dario Teixeira"
  date="2009-09-24T15:20:49"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
<msg 
  url="2009/09/267f683756cc3419f5b23f0f19c44d41"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-09-24T23:17:44"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
<msg 
  url="2009/11/950a81f47da93334824b560184fca0b5"
  from="Jon Harrop &lt;jon@f...&gt;"
  author="Jon Harrop"
  date="2009-11-08T18:11:40"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
<msg 
  url="2009/09/b431e8f77892db9357ce19b9f7a352ba"
  from="Philippe Wang &lt;philippe.wang@l...&gt;"
  author="Philippe Wang"
  date="2009-09-24T23:25:42"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
<msg 
  url="2009/09/b0505f0d4dc8f1c562ac9350610d49bf"
  from="Philippe Wang &lt;philippe.wang.lists@g...&gt;"
  author="Philippe Wang"
  date="2009-09-25T14:11:52"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
</msg>
</msg>
<msg 
  url="2009/09/54441e85c37e70916d85285762898cfd"
  from="David Teller &lt;David.Teller@u...&gt;"
  author="David Teller"
  date="2009-09-24T18:24:54"
  subject="Re: [Caml-list] OC4MC : OCaml for Multicore architectures">
</msg>
</msg>
</thread>

<contents>
On Saturday 26 September 2009 00:26:50 Benjamin Canou wrote:
&gt; On the maintenance side, as Philippe said, we already have some half
&gt; working version with ocaml 3.11.x, but partly because of the changes
&gt; made to the native runtime in this release and partly because of [1],
&gt; porting the patch is not trivial.

OC4MC seems to work very well for numerical problems that do not allocation at 
all but introducing even the slightest mutation (not even in the inner loop) 
completely destroys performance and scaling. I'm guessing the reason is that 
any allocations eventually trigger collections and those are copying the 
entire heap which, in this case, consists almost entirely of float array 
arrays.

My guess was that using big arrays would alleviate this problem by placing 
most of the data outside the OCaml heap (I'm guessing that oc4mc leaves the 
element data of a big array alone and copies only the small reference to 
it?). However, it does not seem to handle bigarrays:

../out/lib/ocaml//libbigarray.a(bigarray_stubs.o): In function 
`caml_ba_compare':
bigarray_stubs.c:(.text+0x1e5): undefined reference to 
`caml_compare_unordered'
bigarray_stubs.c:(.text+0x28d): undefined reference to 
`caml_compare_unordered'
collect2: ld returned 1 exit status
Error during linking

If I am correct then I would value functioning bigarrays above OCaml 3.11 
support.

-- 
Dr Jon Harrop, Flying Frog Consultancy Ltd.
http://www.ffconsultancy.com/?e

</contents>

</message>

