Information

User Beancounters or UBC parameters are a set of limits and guarantees controlled by each container. UBC is the major component of Parallels Virtuozzo Containers (PVC) resource management and quality of service.

The proc filesystem entry showing resource control information is the proc/user_beancounters file inside a container.

/proc/user_beancounters on a Hardware Node contains the UBC parameters for all containers running on the Node.

An example /proc/user_beancounters is shown below:

[root@pvclinux ~]# cat /proc/user_beancounters
Version: 2.5
uid  resource           held  maxheld              barrier                limit   failcnt
331:kmemsize        2952339  3059712             24299200             26429120         0
    lockedpages           0        0                65536                65536         0
    privvmpages        2584     2766               362144               392912         0
    shmpages             18       18  9223372036854775807  9223372036854775807         0
    dummy                 0        0  9223372036854775807  9223372036854775807         0
    numproc              10       12  9223372036854775807  9223372036854775807         0
    physpages          4457     4803                65536                65536         0
    vmguarpages           0        0               131072               131072         0
    oomguarpages       1272     1272                65536                65536         0
    numtcpsock            6        6  9223372036854775807  9223372036854775807         0
    numflock              2        2  9223372036854775807  9223372036854775807         0
    numpty                0        0  9223372036854775807  9223372036854775807         0
    numsiginfo            0        3  9223372036854775807  9223372036854775807         0
    tcpsndbuf        104640   104640  9223372036854775807  9223372036854775807         0
    tcprcvbuf         98304    98304  9223372036854775807  9223372036854775807         0
    othersockbuf       6936     6936  9223372036854775807  9223372036854775807         0
    dgramrcvbuf           0        0  9223372036854775807  9223372036854775807         0
    numothersock         20       20  9223372036854775807  9223372036854775807         0
    dcachesize      1060752  1068020  9223372036854775807  9223372036854775807         0
    numfile             334      340                12000                12000         0
    dummy                 0        0  9223372036854775807  9223372036854775807         0
    dummy                 0        0  9223372036854775807  9223372036854775807         0
    dummy                 0        0  9223372036854775807  9223372036854775807         0
    numiptent            18       18  9223372036854775807  9223372036854775807         0

The output contains the following fields:

  • uid: the numeric identifier of a container

  • held: the current usage of a resource (an accounting-only parameter)

  • maxheld: an accounting parameter which shows the maximum value of a resource usage during the last accounting period. This period usually matches the container lifetime.

  • failcnt: the number of refused resource allocations for the whole lifetime of the process group

  • barrier: a control parameter which generally defines the normal resource allocation border. For some resources, the parameter can be undefined, while for others, it may be an effectively limiting parameter. See the UBC parameters description.

  • limit: a control parameter which generally defines the top border for a resource allocation. For some resources, the parameter can be undefined, while for others, it may be an effectively limiting parameter. See the UBC parameters description.

Additional information

For more information, see the following sources:

UBC Management Guide

OpenVZ Wiki

Parallels Virtuozzo Containers 4.7 for Linux User's Guide

112807 UBC resources in Parallels Virtuozzo Containers for Linux

Internal content