A benchmarking tool for measuring message passing latency between Elixir processes. This project provides utilities to test and analyze the performance characteristics of inter-process communication in the Erlang Virtual Machine (BEAM).
- One-to-One Latency Testing: Measures round-trip message passing latency between two processes
- Statistical Analysis: Provides average, minimum, and maximum latency measurements
- Configurable Iterations: Allows customization of test iterations for statistical accuracy
- Nanosecond Precision: Uses high-resolution monotonic time for accurate measurements
To run the default benchmark (100,000 iterations):
MessageLatency.run()For custom iteration counts:
MessageLatency.Runner.one_to_one(50_000)The benchmark will output statistics including:
- Total iterations performed
- Average latency in milliseconds
- Minimum observed latency
- Maximum observed latency