Browse thread
Raising an old issue : true concurrency in OCaml [Xavier, Damien, any]
-
Yoann Fabre
- Christian Szegedy
- Chris Campbell
- Oliver Bandel
- Christophe TROESTLER
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Christian Szegedy <szegedy@t...> |
| Subject: | Re: [Caml-list] Raising an old issue : true concurrency in OCaml [Xavier, Damien, any] |
Yoann Fabre wrote: >My point is the following (let's be blatant): I'm afraid any pure-OCaml >program will be limited to at most 50% of the CPU power on about 50% of the >machines in the next five years ; and probably 25/30% on the remaining 40% >of medium to high-end machines. > > I am really shocked reading this. I am well into an OCaml high-performance computing project. I only tested it on single-processors, but I expected that (given the Thread module) it would be no problem to parallelize it. Now it turns out that it is impossible. The typical platform for my project will be Linux on multiprocessor AMD64. As in your case, most of my algorithms can be very easily parallelized using shared-memory parallelism in C/C++. I second to your opinion that OCaml will be out of competition if it will not support shared memory parallelism very soon. Multiprocessor workstations have become very affordable and multi-core CPUs are becoming standard. I really hope that the OCaml team will accept the challenge, otherwise one should look for alternatives. Does CML supports real concurrency via shared memory parallelism? Instead of Java, one could use Scala which generates java bytecode, but the implementation did not seem to be very mature. It is far from the stability and performance of OCaml. Best regards, Christian