Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[VL] Limit Velox global memory manager's usage #6960

Open
zhztheplayer opened this issue Aug 21, 2024 · 2 comments
Open

[VL] Limit Velox global memory manager's usage #6960

zhztheplayer opened this issue Aug 21, 2024 · 2 comments
Labels
enhancement New feature or request

Comments

@zhztheplayer
Copy link
Member

zhztheplayer commented Aug 21, 2024

It's observed that Velox backend uses more memory than we configured. Which is perhaps related to the untracked Velox global memory manager.

We should set a capacity according to Spark overhead size to here to limit that memory manager's usage.

@zhztheplayer zhztheplayer added the enhancement New feature or request label Aug 21, 2024
@FelixYBW
Copy link
Contributor

The global memory allocation is used for spill's compression buffer. The memory is counted into executor.overhead memory in Spark. We can do the same for Gluten.

In spark, the overhead memory includes reducer's netty memory, compression buffer memory, the memory native library allocated.

In Gluten the overhead memory includes reducer's netty memory, memory using global allocator, all the std::container's memory.

@FelixYBW
Copy link
Contributor

@marin-ma Is the compression buffer retained in shuffle? if not we can use the global memory allocator to allocate it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants