Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Experience Report: Erlang in Acoustic Ray Tracing [pdf] (uri.edu)
2 points by simonb on June 29, 2009 | hide | past | favorite | 1 comment


I find this paper on the first view a bit weird. Please let me explain why. First of all Erlang has for instance here [1] proven to be viable for HPC. Erlang is useful mostly for high scalability problems e.g. Clusters etc.

The authors claim that their pthread implementation scales better than Erlang. This is most confusing as I suspect them to have made design errors in their Erlang system. They wrote they "ported" it. Erlang is a SSA based FP lanugage specifically designed for soft real-timeness and scaling out of the box. There are even works currently to get it running under hard realtime constraints [2]. While this is not exactly targeting high performance it is still important to point that out. If performance is so crucial a fortran based implementation might be better probably.

Thirdly, I suspect that the portation of their system doesn't take care of language pitfalls like proper tail recursion etc. which would explain the problem in scaling. (See page 1 section 3)

Other thoughts in bullet version:

- Pseudocode is iterative style, Erlang is a FP

- "variance was negligible" -> Error bars in Graphs would tell us that.

- Point 6.1 actually gives me the impression that a implementation in C++ would be preferrable compared to Erlang due to the emphasis on performance

- I think the memory issue on the last page is the key why erlang performed so badly... "multiple invocations of the GC"

Of course regarding the memory footprint I have to agree this is clearly a disadvantage for Erlang compared to manually tuned memory management.

Comments? :)

References:

[1] High Performance Computing in Erlang, http://portal.acm.org/citation.cfm?id=1411273.1411281

[2] Tworards Hards Realtime Erlang (HARTE) http://www.erlang.se/workshop/2007/proceedings/05nicosi.pdf




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: