The latest Erlang is out, and now supports SMP with much less effort than before.
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 are a reality.
With Erlang, most of the problems which occur in multi-threaded programs have been solved once and for all in the Erlang VM and do not have to be handled by the application programmers.
In the SMP version of the Erlang virtual machine, there can be many process 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.
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.