Erlang goes multicore

Dmitrii Dimandt dmitriid@REDACTED
Wed Jun 7 13:29:09 CEST 2006

I wonder if anyone has seen this (nothing appeared in the list as far
as I can tell):

In Erlang/OTP R11B released on May 17 the major news is the support
for SMP (Symmetric MultiProcessing).

SMP is supported by most modern operating systems like Linux, Windows,
Mac OSx, Solaris and is becoming more important now when dual
processors, hyper-threading technology and multi-core systems is a


Multi-threading support in Erlang

The Erlang VM is written in C and run as one process on the host
operating system (OS). Within the Erlang VM an internal scheduler is
responsible for running the Erlang processes (which can be many
thousands). In the SMP version of the Erlang VM, there can be many
such schedulers running in separate OS threads. As default there will
be as many schedulers as there are processors or processor cores on
the system.

The SMP support is totally transparent for the Erlang programs. That
is, there is no need to change or recompile existing programs.
Programs with built-in assumptions about sequential execution must be
rewritten in order to take advantage of the SMP support, however.

This is the first step

In this release, the Erlang VM supports SMP with focus on stability.
There will follow a number of subsequent steps with necessary
optimizations and support for more platforms.

The Erlang VM with SMP support has been tested on the following platforms:

Solaris 10 sparc

Suse Linux (SLES 9) x86


More information about the erlang-questions mailing list