May 19, 2008
Erlang Simulation Testing Times
The Erlang simulation engine, which I now call erlSim, is running. I have some test results that show the concurrency capabilities of the Erlang language and the erlSim simulator.
| Num Processes | Events per Process | Total Events | Seconds per Event | Total Time |
|---|---|---|---|---|
| 1 | 1 | 10 | 0.000079900000 | 0.000799 |
| 5 | 1 | 50 | 0.000009260000 | 0.000463 |
| 1 | 10 | 100 | 0.000016520000 | 0.001652 |
| 25 | 25 | 6250 | 0.000014700640 | 0.091879 |
| 100 | 100 | 100000 | 0.000014360140 | 1.436014 |
| 200 | 200 | 400000 | 0.000015691415 | 6.276566 |
| 50 | 1000 | 500000 | 0.000015591182 | 7.795591 |
This information indicates that as the number of concurrent processes increases there is not a significant increase in the speed each process requires.
This data was generated on :
2.4 Ghz Intel Core 2 Duo
2 GB RAM
OS X MacBook
Erlang (BEAM) emulator version 5.6.1
This is looking very promising as a basis for discreet event simulations. I am working on a series of random number streams (triangular, normal, beta, etc.) to go with this basic engine. It is nearing completion for eight different random number stream types.

Jeff Joslin said,
July 11, 2008 at 6:53 pm
Do you have an update on your erlSim work? I am seriously thinking about writing a discrete event simulation in Erlang and it would be great to have a framework to start with.
tetontech said,
July 12, 2008 at 7:15 pm
Jeff,
I would be happy to help out. Let’s talk of line via email.