-
Notifications
You must be signed in to change notification settings - Fork 435
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
[CORE] Execution runtime / native memory manager refactor #6243
Conversation
Run Gluten Clickhouse CI |
1 similar comment
Run Gluten Clickhouse CI |
Run Gluten Clickhouse CI |
2 similar comments
Run Gluten Clickhouse CI |
Run Gluten Clickhouse CI |
Run Gluten Clickhouse CI |
/Benchmark Velox |
Run Gluten Clickhouse CI |
/Benchmark Velox |
Run Gluten Clickhouse CI |
2 similar comments
Run Gluten Clickhouse CI |
Run Gluten Clickhouse CI |
Run Gluten Clickhouse CI |
e263229
to
dbe1a16
Compare
Run Gluten Clickhouse CI |
Run Gluten Clickhouse CI |
Run Gluten Clickhouse CI |
Issues should be followed up:
|
===== Performance report for TPCDS SF2000 with Velox backend, for reference only ====
|
The patch introduces a new design for (Velox backend) execution runtime and native memory manager. The new design will make the relevant components much clearer and simpler than before both in concept and code.
The following figure will demonstrate the new design in detail:
In the new design, native memory manager instances will be 1:1 bound to execution runtime instances. Objects stores are still in runtime instances to make sure all the allocated contextual objects don't escape their resident runtimes' lifecycle scope.
It's no longer needed to create memory manager instances from JVM side as they will be managed internally in runtime instances. Spillers will be accounted in a list in runtime and will no longer need to be created during instantiating memory managers.
JVM side
MemoryManager
andMemoryAllocator
APIs are removed as no longer used.