Skip to content
This repository was archived by the owner on May 9, 2024. It is now read-only.

Use a single arena per RowSetMemoryOwner. #421

Merged
merged 1 commit into from
Apr 21, 2023

Conversation

ienkovich
Copy link
Contributor

Virtual memory consumption can be really out-of-control right now due to arena per core in each RowSetMemoryOwner + 4GB block size (~100MB in testing mode). That gives really huge memory consumption when ASAN is used and no visible profit (allocation is still done under the mutex).

I'd like to move to a single Arena per RowSetMemoryOwner and see how it goes. To avoid very small result set buffers placed into a single cache line, 256-bytes minimum allocation size is enforced. This should be ok because the number of allocations doesn't depend on fragment sizes, only on the number of kernels.

@ienkovich ienkovich merged commit e99b651 into main Apr 21, 2023
@ienkovich ienkovich deleted the ienkovich/reduce-arenas-number branch April 21, 2023 18:13
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants