You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Right now we're tagging high-memory usage nodes with their maximum demands for resident memory, which is appropriate for systems that permit the kernel to overcommit memory. However, in strict overcommit mode, the kernel counts all virtual memory against its total limits.
For non-strict mode, using resident memory requirements will allow us to better utilize a system's resources, while for strict mode, using virtual memory requirements will prevent us from crashing. So it seems sensible to allow both options, which will adjust the tagging.
I suspect we'll want a function or an object to handle the memory options. If we make some rough assumptions of VM/RSS ratios, we can simply keep the numbers we have in the case of non-strict, and apply a scaling factor for strict. e.g.
We can check for /proc/sys/vm/overcommit_memory < 2 to see if overcommit is allowed at all (default would be yes, in case the file can't be read). And a default RSS_VM_RATIO (I switched the order, so ratios will be <1.0 in that case) can be read from /proc/sys/vm/overcommit_ratio. A default of 0.5 makes sense.
Right now we're tagging high-memory usage nodes with their maximum demands for resident memory, which is appropriate for systems that permit the kernel to overcommit memory. However, in strict overcommit mode, the kernel counts all virtual memory against its total limits.
For non-strict mode, using resident memory requirements will allow us to better utilize a system's resources, while for strict mode, using virtual memory requirements will prevent us from crashing. So it seems sensible to allow both options, which will adjust the tagging.
I suspect we'll want a function or an object to handle the memory options. If we make some rough assumptions of VM/RSS ratios, we can simply keep the numbers we have in the case of non-strict, and apply a scaling factor for strict. e.g.
The text was updated successfully, but these errors were encountered: