linux - Limit memory bandwidth cgroups without NUMA -
i trying limit bandwidth of process memory. have 2 cgroups (cgroup1 , cgroup2) processes in them. can limit amount of memory used each cgroup. if keep calling malloc()
, free()
, saturating memory bus, influence each other.
how limit this? don't have 2 different memory nodes, , no numa.
this not possible. supported subsystems are:
- blkio — subsystem sets limits on input/output access , block devices such physical drives (disk, solid state, usb, etc.).
- cpu — subsystem uses scheduler provide cgroup tasks access cpu.
- cpuacct — subsystem generates automatic reports on cpu resources used tasks in cgroup.
- cpuset — subsystem assigns individual cpus (on multicore system) , memory nodes tasks in cgroup.
- devices — subsystem allows or denies access devices tasks in cgroup.
- freezer — subsystem suspends or resumes tasks in cgroup.
- memory — subsystem sets limits on memory use tasks in cgroup, , generates automatic reports on memory resources used tasks.
- net_cls — subsystem tags network packets class identifier (classid) allows linux traffic controller (tc) identify packets originating particular cgroup task.
- net_prio — subsystem provides way dynamically set priority of network traffic per network interface.
- ns — namespace subsystem.
a recent systems research paper introduced new controller achieve , has made associated code available.
an alternative mmap file , set blkio
settings on (not sure if work). then, have program read/write variables file instead of using malloc
(ugly!).
Comments
Post a Comment