[erlang-questions] Erlang and/or MPI

Michael Truog <>
Wed Jun 26 16:36:51 CEST 2013


Hi Ivan,

You should need an Infiniband driver for Erlang to avoid normal sockets use, unless you use MPI from within Erlang through a NIF or port driver.  The main problem is that an Erlang cluster is limited to roughly 100-200 nodes because of the fully connected network topology it makes (due to the net tick time of 60 seconds).  You can always make a different topology to avoid the problem, but with your cluster size, you may not need to.  Otherwise normal Erlang use shouldn't be a problem.

Best Regards,
Michael

On 06/26/2013 07:19 AM, Ivan Uemlianin wrote:
> Dear All
>
> I am being given access to an HPC (High Performance Computing) cluster.  Some technical details are here [1] but basically it seems to be lots of multi-core (12, 16, 64) computers glued together by something called Infiniband.
>
> I have ideas of using the platform for speech recognition: processing lots of data files, and training up large hidden Markov models or dynamic Bayesian networks.  Much of the standard open-source software in this area is in C (e.g., Sphinx, Kaldi).  I do have long-term pipe-dreams/fantasies of writing similar stuff in erlang.
>
> Induction to the HPC Wales platform includes classes on MPI and OpenMP.
>
> So, my question is: what is the best (or, "are the good") ways to use erlang in such an environment?
>
> I've looked around on the web and found a lot of heated debate, and one "benchmark".  One 2011 blog post [2] is informative, and there is a relevant-looking 2008 research project [3].
>
> Are there special best practices for working on a cluster of multi-core computers, or is it a case of "write idiomatic erlang and everything will be fine"?
>
> With thanks and best wishes
>
> Ivan
>
>
> [1] http://hpcwales.co.uk/sites/default/files/hpcwales/HPCWales_technical_specification_0512.pdf
>
> [2] http://jlouisramblings.blogspot.co.uk/2011/07/erlangs-parallelism-is-not-parallelism.html
>
> [3] http://www.researchgate.net/publication/221211398_High-performance_technical_computing_with_erlang
>
>




More information about the erlang-questions mailing list