cgroup--cgroup 测试

发表于:2013-10-14 11:15

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:XscKernel    来源:51Testing软件测试网采编

  cgroups全称control groups,在RHEL6的2.6.32内核中已经包括了cgroup的patch。这里强烈建议安装RHEL6(CentOS6)来使用cgroups,如果没有的话,
  只能升级内核了 ( > 2.6.26版本)
  安装cgroups
  apt-get install cgroup-bin
  改变配置:vi /etc/cgconfig.conf
  将最后的mount 改为如下形式:
mount {
cpuset = /sys/fs/cgroup/cpuset;
net_cls = /sys/fs/cgroup/net_cls;
blkio = /sys/fs/cgroup/blkio;
perf_event = /sys/fs/cgroup/perf_event;
cpu = /sys/fs//cgroup/cpu;
cpuacct = /sys/fs/cgroup/cpuacct;
devices = /sys/fs/cgroup/devices;
memory = /sys/fs/cgroup/memory;
freezer = /sys/fs/cgroup/freezer;
}
  测试 cpu 子系统
  cpu.shares:假设cgroup A的 tasks 的 cpu.shares 值为1,cgroup B的tasks的cpu.shares值为2,则cgroup B的进程占用的cpu时间是cgroup A上进程的2倍。
  cpu.rt_runtime_us
  cpu.rt_period_us:  这两个值建议不要设,让OS去调度占用的CPU时间的绝对值。
  进入 cpu 目录:
  sina@ubuntu:~$ cd /sys/fs/cgroup/cpu
  创建目录:
  # mkdir   tinker
  # mkdir   tailor
  下面通过taskset -c 3 ,启动两个虚拟机  并指定其 cpu affinity为cpu 3,启动2个虚拟机:
  # taskset -c 3 ./for-test.sh
  并在每个虚拟机中 满负荷运行 计算密集型程序。
  观察两台虚拟机的PID,及cpu使用率:
root@ubuntu:~# ps -C qemu-system-i386 -opid,%cpu,psr,args
PID %CPU PSR COMMAND
3237 50.1   3 /home/sina/Downloads/qemu-kvm-1.1.0/i386-softmmu/qemu-system-i386
3306 49.8   3 /home/sina/Downloads/qemu-kvm-1.1.0/i386-softmmu/qemu-system-i386
  此时把两个qemu 任务的 pid分别 echo 进 tasks 文件中。并且修改  cpu/tinker  的 cpu.shares 为2048, cpu/tailor  的 cpu.shares 为512:
root@ubuntu:~# echo 3237 > /sys/fs/cgroup/cpu/tinker/tasks
root@ubuntu:~# echo 3306 > /sys/fs/cgroup/cpu/tailor/tasks
root@ubuntu:~# echo 2048 > /sys/fs/cgroup/cpu/tinker/cpu.shares
root@ubuntu:~# echo 512 > /sys/fs/cgroup/cpu/tailor/cpu.shares
  此时观察两个任务的 cpu 使用率:
root@ubuntu:~# ps -C qemu-system-i386 -opid,%cpu,psr,args
PID %CPU PSR COMMAND
3237 80   3 /home/sina/Downloads/qemu-kvm-1.1.0/i386-softmmu/qemu-system-i386
3306 20   3 /home/sina/Downloads/qemu-kvm-1.1.0/i386-softmmu/qemu-system-i386
  设置了cpu.shares之后CPU利用率不会立刻就变为shares指定的那样,需要等待一段时间,基本上是个曲线的变化过程,之后就按照设置的数值来分配cpu使用率。
  (须待以后在测试!!)
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号