Réf. : Re: [erlang-questions] Erlang on supercomputers
Mon Apr 23 18:33:17 CEST 2007
thanks to everybody who already contributed to this thread.
If I understood well :
- although Bluegene/L is basically a number-cruncher, it could be
used as well with either a pure Erlang application, or with Erlang acting
as a "distribution" glue to lower level languages, such as Fortran, C or
C++ (not to mention that on the simpler case of clusters, Erlang could
help a lot)
- the communication layer will be an issue on the platform, due to
the lack of TCP/IP, but one could imagine using the available carriers
(maybe MPI, or lower-level) to build Erlang communication on top of them
- threading would be another concern as only one user process per
"logical node" would be allowed, but using green thread (i.e. in user
space rather than in kernel space) could do the trick
- cross-compilation could be a difficulty, although it is a not
too uncommon case with Bluegene and with Erlang (separately, though, for
- scalability of the simulation could be an issue, if it were
really to be executed simultaneously on the 8000 nodes
- there exists a daring experimental Ruby implementation on
Bluegene that somewhat proved the technical feasability of the port (quite
impressive !), and that may share a lot with the Erlang port itself
I like the idea of using Erlang on clusters and on Bluegene !
On our side we are in the process of developing a prototype of a
large-scale Erlang-based distributed simulation, when it will be finished,
we expect to run it at least on a cluster and, if possible, on a Bluegene
Thanks again for the hints (please keep the mailing-list informed if ever
there were some progress on the Bluegene/L Erlang port !)
EDF R&D : 1, avenue du Général de Gaulle, 92140 Clamart, France
Département SINETICS, groupe ASICS (I2A), bureau C-052
Office : 33 1 47 65 59 58 / Mobile : 33 6 16 83 37 22 / Fax : 33 1 47 65
cc : (ccc : Olivier BOUDEVILLE/IMA/DER/EDFGDF/FR)
Objet : Re: [erlang-questions] Erlang on supercomputers
Chad Brewbaker wrote:
> The problems with Bluegene/L are:
> 1. The compute node kernel only allows user process per CPU. I haven't
> looked into the Erlang source much, but all threading must be "green".
i believe the emulator threading can be turned off at run-time (afaik
the non-SMP emu (optionally) uses threads for io).
> 2. Communication is done over MPI in C/C++/Fortran. There is no API for
> doing TCP/IP communication I know of, but if you are feeling lucky you
> use un-documented low level communication API's.
it is possible (and supposedly not very hard) to implement the erlang
distribution over a different carrier than the default TCP/IP. documented
> 3. You need to cross compile, so all cross compilation problems with
several people on the mailing list claims to cross-compile without
problems. see also the FAQ :> http://erlang.org/faq/x867.html#AEN963
> I just got Ruby working on Bluegene/L and was thinking about doing
> I don't know if I am a fan of Erlang yet or not. I'm on the fence
> should try porting it or just implement Erlang message passing
> I want as a Ruby library.
not that i know anything about supercomputers or ruby, but i would bet
money that in a cluster of 2048 cpu's erlang would beat the pants off
erlang is typically faster than ruby, and generally performs very well in
erlang-questions mailing list
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the erlang-questions