Abstract
We investigated the relative merits of C++ and Erlang in the implementation of a parallel acoustic ray tracing algorithm for the U.S. Navy. We found a much smaller learning curve and better debugging environment for parallel Erlang than for pthreads-based C++ programming. Our C++ implementation outperformed the Erlang program by at least 12x. Attempts to use Erlang on the IBM Cell BE microprocessor were frustrated by Erlang's memory footprint.
Supplemental Material
Available for Download
Supplemental material for: Experience report: erlang in acoustic ray tracing
- Lawrence E. Kinsler, Austin R. Frey, Alan B. Coppens, and James V. Sanders. Fundamentals of Acoustics, 4th Ed. Danvers, MA, USA: John Wiley & Sons, Inc., 2000. ISBN 0-471-84789-5Google Scholar
- Joe Armstrong. Programming Erlang Raleigh, NC, USA: The Pragmatic Bookshelf, 2007. ISBN-13: 978-1-934356-00-5Google Scholar
- Thomas Chen, Ram Raghavan, Jason Dale, Eiji Iwata. Cell Broadband Engine Architecture and its first implementation http://www.ibm.com/developerworks/power/library/pa-cellperf/Google Scholar
- J.H. Reppy. Concurrent Programming in ML Cambridge University Press, 2007. ISBN-13: 978-0521714723 Google Scholar
Digital Library
Index Terms
Experience report: erlang in acoustic ray tracing
Recommendations
Experience report: erlang in acoustic ray tracing
ICFP '08: Proceedings of the 13th ACM SIGPLAN international conference on Functional programmingWe investigated the relative merits of C++ and Erlang in the implementation of a parallel acoustic ray tracing algorithm for the U.S. Navy. We found a much smaller learning curve and better debugging environment for parallel Erlang than for pthreads-...
What Is Object-Oriented Programming?
The meaning of the term 'object oriented' is examined in the context of the general-purpose programming language C++. This choice is made partly to introduce C++ and partly because C++ is one of the few languages that supports data abstraction, object-...
The implementation and use of a generic dataflow behaviour in Erlang
Erlang 2015: Proceedings of the 14th ACM SIGPLAN Workshop on ErlangWe propose a new "generic" abstraction for Erlang/OTP that aids in the implementation of dataflow programming languages and models on the Erlang VM. This abstraction simplifies the implementation of "processing elements" in dataflow languages by ...







Comments