https://github.com/emqx/ipqueue
High Performance Interleaved Priority Queue for Erlang/Elixir
https://github.com/emqx/ipqueue
priority-queue
Last synced: 3 months ago
JSON representation
High Performance Interleaved Priority Queue for Erlang/Elixir
- Host: GitHub
- URL: https://github.com/emqx/ipqueue
- Owner: emqx
- License: apache-2.0
- Created: 2021-09-02T15:15:22.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-09-06T18:11:03.000Z (over 4 years ago)
- Last Synced: 2025-09-29T22:58:34.446Z (3 months ago)
- Topics: priority-queue
- Language: Erlang
- Homepage:
- Size: 14.6 KB
- Stars: 7
- Watchers: 13
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ipqueue
Interleaved Priority Queue for Erlang/Elixir based on ordered set ETS table.
As opposed to the traditional priority queue, messages with different priorities are interleaved.
Probability of the next message is determined by its priority.
## Performance:
Push: avg. per element: 1.79 μs (Nelems = 1M)
Pop: avg. per element: 1.1 μs (Nelems = 1M)
Measured on OTP23 w/o HiPE, CPU: Intel(R) Core(TM) i7-10510U