[MLton] approaches to parallelism in ML

skaller skaller at users.sourceforge.net
Tue Oct 10 07:35:53 PDT 2006


On Mon, 2006-10-09 at 23:00 -0700, Kip Macy wrote:
> The ocaml team feels very strongly that if one wishes to exploit
> parallelism with ocaml one should use interprocess message passing.
> They feel that a parallel GC is too difficult to debug and incurs too
> much overhead. 

I think they feel the time is not right, and also they're
stuck very much with their current rather old run time system.

The Ocaml bytecode interpreter could probably be easily
adapted. The native code compilers are another story ..

I hear from my local computer shop 4 core AMD64 will be
available commercially next month .. the time may be
sooner than they think :)

> Perry Cheng's work indicates that a parallel GC does
> incur sufficient additional overhead to not make sense in a UP
> context, but can in an SMP context can provide substantial benefit.

Cheng describes a *parallel* collector of interest only when
you have around 64 processors. It is a step beyond a 'merely'
concurrent collector, which has one collector thread.
Such a concurrent collector can collect for multiple
worker threads on small numbers of CPUs, and is sufficient
for desktop machines for some time, probably another decade.

> How do mlton developers feel about supporting same address space
> parallelism in mlton?

They need to get the 64 bit port going before worrying
about such luxuries .. no one is going to run significant
SMP apps on a 32 bit machine :)

-- 
John Skaller <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net




More information about the MLton mailing list