Réf. : Re: [erlang-questions] Erlang on supercomputers

Olivier BOUDEVILLE olivier.boudeville@REDACTED
Mon Apr 23 18:33:17 CEST 2007

Hi again,

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 
the moment)
        - 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 !)
best regards,

Olivier Boudeville.
Olivier Boudeville

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 
34 24

20/04/2007 09:16

        Pour :  erlang-questions@REDACTED
        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 
in the 
ERTS manual.

> 3. You need to cross compile, so all cross compilation problems with 
> apply.

   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 
> next:
> http://www.ece.iastate.edu/~crb002/cnr.html
> I don't know if I am a fan of Erlang yet or not. I'm on the fence 
weather I
> should try porting it or just implement Erlang message passing 
> functionality
> 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 
distributed environment.

erlang-questions mailing list

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20070423/3bdd4798/attachment.htm>

More information about the erlang-questions mailing list