Reputation: 1477
I'm SO confusing about memory-settings in Presto. Please check this out below:
query.max-memory
query.max-memory-per-node
(base config)
query.max-total-memory
(release in 0.205)
resources.reserved-system-memory
(admin properties)
That is all I can find out.
Here are my Presto settings:
query.max-memory=2.25GB
query.max-total-memory=2.25GB
query.max-memory-per-node=0.75GB
Base on my settings, I found these rules:
query.max-memory-per-node
<= jvm * 0.25
General Pool = jvm * 0.4, same as the default value of resources.reserved-system-memory
Reserved Pool = jvm * 0.3
The relationship between all kinds of memory-settings. (like resources.reserved-system-memory
is General Pool? query.max-total-memory
=user memory+system memory, what are user memory and system memory?)
What General Pool and Reserved Pool use for? How can I change their values?
General Pool(40% of jvm), Reserved Pool(30% of jvm), where is the last 30% of jvm? or How Presto assigns my 3GB jvm memory?
Upvotes: 5
Views: 3154
Reputation: 1477
reserved = query.max-memory-per-node
system = 40% of heap
general = heap - system - reserved
Upvotes: 2