По моим представлениям можно поступить следующим образом.
Посмотрите на вывод команды "cat /proc/cpuinfo | grep -i MHz" внутри VE.
Сумма этих значений будет верхним лимитом, который позволяется вашей VE.
Она будет равна
CPULIMIT
--------------- * SUM_MHZ
PHYS_CPUS * 100
где PHYS_CPUS - количество физических CPU на HN
SUM_MHZ - сумма MHZ по всем физическим CPU.
Однако, это верхняя граница, достигается ли она в данный момент можно проверить путем запуска CPU - активной задачи и просмотра команды top.
Например,
# cat /proc/cpuinfo | grep -i mhz
cpu MHz : 2131.198
cpu MHz : 2131.198
# vzctl exec 101 cat /proc/cpuinfo | grep -i mhz
cpu MHz : 532.799
cpu MHz : 532.799
# cat /etc/vz/conf/101.conf | egrep -i "cpulimit|cpus"
CPUS="2"
CPULIMIT="50"
Таким образом PHYS_CPUS = 2.
top показывает
# top
top - 21:00:36 up 2:45, 0 users, load average: 1.68, 1.20, 0.94
Tasks: 8 total, 4 running, 4 sleeping, 0 stopped, 0 zombie
Cpu0 :100.0%us, 0.0%sy, 0.0%ni, 0.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu1 :100.0%us, 0.0%sy, 0.0%ni, 0.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 262144k total, 4772k used, 257372k free, 0k buffers
Swap: 0k total, 0k used, 0k free, 0k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
18319 root 25 0 696 104 80 R 26 0.0 10:49.50 a.out
19737 root 25 0 692 104 80 R 25 0.0 0:14.50 a.out
..................
По строчкам Cpu0, Cpu1 можно судить о том, что VE использует 100% доступного процессорного времени на обоих (виртуальных) cpu, однако это составляет 26% и 25% соответсвенно от полной мощности процессора (то есть всего около 50% мощности одного процессора, что соответсвует значению CPULIMIT=50). Таким образом, в ДАННЫЙ МОМЕНТ ВРЕМЕНИ VE можно сказать, что VE работает на частоте:
0.25* 2131.198+ 2131.198*0,26.
Ну вот как-то так.