3 ms·
Erlang may be fine, for some things, but notice that parallel computation isn't one of them yet. It is nice for concurrency, but the interpreter is pretty slow.
by jlouis 18y ago
Erlang may be fine, for some things, but notice that parallel computation isn't one of them yet. It is nice for concurrency, but the interpreter is pretty slow. Running the pmap example on my machine takes 80 seconds. A naively implemented Ocaml version takes 7.
This tells you that Erlang currently has a performance-gap of about 10 in speedup before it begins being viable. The next problem is that not all things are MapReducible. Note that the current problem is trivially parallelizable. Hence it gives you some of the best speedup you might expect in a program. In general, you won't be this lucky.
Erlang is mostly interesting because of its concurrent abilities, not for its abilities with parallel computation.
- KirinDave 18y agoIt's mostly interesting because its concurrency, parallelization, and distribution primitives are the same thing semantically. Speed is something we can work on, eventually everything can be natively and efficiently compiled if there is enough interest. What's more important is its ability to flexibly deploy to a variety of configurations. Your 8-thread piplelined dataflow in Erlang could easily be moved to a 8-machine EC2 deploy, with minimal code modifications. That's far more interesting than an order of magnitude in performance, which could easily be addressed.