Skip to content

Conversation

@carlhoerberg
Copy link
Member

@carlhoerberg carlhoerberg commented Aug 14, 2023

Allocate memory manually for the Table instead of relying on IO::Memory, which caused unnecessary heap allocations when the Table was empty.

This PR produces between 7 and 20% higher throughput in LavinMQ.

@carlhoerberg carlhoerberg changed the base branch from main to optimized-table August 21, 2023 11:29
@carlhoerberg carlhoerberg changed the base branch from optimized-table to main August 21, 2023 11:29
@kickster97 kickster97 marked this pull request as draft May 6, 2024 08:40
- Implement copy-on-write semantics to avoid unnecessary memory copies
- Support read-only byte arrays (e.g. from mmap) with lazy copying
- Optimize heap expansion to use minimal required memory
- Reduce copying overhead when reading from bytes/IO streams
@carlhoerberg carlhoerberg marked this pull request as ready for review July 29, 2025 13:30
@carlhoerberg carlhoerberg requested a review from a team as a code owner July 29, 2025 13:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants