Scheduling on CMP

launoja@REDACTED launoja@REDACTED
Tue Apr 18 09:29:32 CEST 2006


Lainaus "Hao, Ming" <mhao@REDACTED>:

> Sorry if this question has been asked. With multiple processors
> available in a machine, can an erlang virtual machines schedule
> processes to run on them? Or you have to run multiple erlang virtual
> machines in order to do it?  Thanks.

The Erlang Virtual Machine is not yet multithreaded (except for asynchronous
I/O), but there's development snapshot of multithreading Erlang Virtual Machine
available at 
http://www.erlang.org/download/snapshots/otp_src_P11B_2006-02-26.tar.gz .
Compile it with: ./configure --enable-smp-support --disable-lock-checking 

My initial experiences indicate that either it doesn't scale in Mnesia's bench
or Mac OS X's Mach-microkernel holds it back. I've got some results from my Mac
Mini Core Duo, but I run some more tests soon. My feeling is that it does scale
quite nicely when there's no contention to ets (which Mnesia is based on) as
Joe's & CO's experiments hints: 
http://www.erlang-stuff.net/blog/

>From the list:
http://www.erlang.org/ml-archive/erlang-questions/200602/msg00467.html
http://www.erlang.org/ml-archive/erlang-questions/200603/msg00019.html
http://www.erlang.org/ml-archive/erlang-questions/200603/msg00142.html

> -ming
> 



Jani Launonen



More information about the erlang-questions mailing list