memcg_stress_test.sh: fix Available memory formula #915
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In NUMA architecture, Sometimes too many node nodes will cause the system to retain too much free memory. Make the value of "memFree" in the /proc /meminfo file greater than the real available value. This resulted in memory over allocation (OOM) for this test.
For example, this is a arm server‘s content of /proc/meminfo which has 128 cpus and 16 nodes :
# cat /proc/meminfo
MemTotal: 536018688 kB
MemFree: 512151936 kB
MemAvailable: 472947264 kB
Buffers: 8384 kB
Cached: 1789376 kB
SwapCached: 0 KB
Active: 1924288 kB
Inactive: 1445888 kB
Active(anom): 1608832 kB
Inactive(amon) 40512 kB
Active(file): 315456 kB
Inactive(file): 1405376 kB
Unevictable: 31744 KB
....
Therefore, it is suggested to change the "memFree" in the calculation formula to "memavailable". Of course, this will give the system more memory pressure, but also the script reserve half of the swap to alleviate this problem.