Difference between revisions of "VSwap"
(created) |
(+ secondary parameters) |
||
Line 12: | Line 12: | ||
: The <code>barrier</code> is ignored, and the <code>limit</code> sets the limit. | : The <code>barrier</code> is ignored, and the <code>limit</code> sets the limit. | ||
− | The sum of physpages.limit and swappages.limit limits the maximum amount | + | The sum of <code>physpages.limit</code> and <code>swappages.limit</code> limits the maximum amount |
of allocated memory which can be used by a container. When physpages limit | of allocated memory which can be used by a container. When physpages limit | ||
is reached, memory pages belonging to the container are pushed out to | is reached, memory pages belonging to the container are pushed out to | ||
Line 20: | Line 20: | ||
swapping. Actual swap out occurs only if there is a global memory shortage | swapping. Actual swap out occurs only if there is a global memory shortage | ||
on the system. | on the system. | ||
+ | |||
+ | === Secondary parameters === | ||
+ | |||
+ | In addition to <code>physpages</code> and <code>swappages</code> being set, it is ''currently'' recommended to: | ||
+ | |||
+ | * Set <code>kmemsize</code> to no more than 1/2 of <code>physpages</code> | ||
+ | * Set <code>dcachesize</code> to no more than 1/2 of <code>kmemsize</code> | ||
+ | * Set <code>lockedpages</code> to no more than 1/2 of <code>physpages</code> | ||
+ | |||
+ | VSwap CT config samples (like [http://git.openvz.org/?p=vzctl;a=blob;f=etc/conf/ve-vswap-256m.conf-sample ve-vswap-256m.conf-sample] that come with vzctl are currently implementing these recommendations. | ||
+ | |||
+ | {{Note|VSwap feature is still being worked on, so these recommendation might change in the future.}} | ||
[[Category: UBC]] | [[Category: UBC]] |
Revision as of 16:27, 16 September 2011
New RHEL6-based OpenVZ kernel has a new memory management model, which supersedes User beancounters. It is called VSwap.
Now you can set two primary parameters: physpages
and swappages
, while all the other beancounters become secondary.
- physpages
- This parameter limits the physical memory (RAM) available to processes inside a container.
- The
barrier
is ignored, and thelimit
sets the limit. - Currently the user memory and the page cache are accounted into
physpages
.
- swappages
- This parameter limits the amount of swap space which can be used for processes inside a container.
- The
barrier
is ignored, and thelimit
sets the limit.
The sum of physpages.limit
and swappages.limit
limits the maximum amount
of allocated memory which can be used by a container. When physpages limit
is reached, memory pages belonging to the container are pushed out to
so called virtual swap (vswap). The difference between normal swap
and vswap is that with vswap no actual disk I/O usually occurs. Instead,
a container is artificially slowed down, to emulate the effect of the real
swapping. Actual swap out occurs only if there is a global memory shortage
on the system.
Secondary parameters
In addition to physpages
and swappages
being set, it is currently recommended to:
- Set
kmemsize
to no more than 1/2 ofphyspages
- Set
dcachesize
to no more than 1/2 ofkmemsize
- Set
lockedpages
to no more than 1/2 ofphyspages
VSwap CT config samples (like ve-vswap-256m.conf-sample that come with vzctl are currently implementing these recommendations.
Note: VSwap feature is still being worked on, so these recommendation might change in the future. |