I was tired of Chrome eating all my laptop resources so I decided to put some limit to it with cgroup.
As I was using Ubuntu 12.04 with support for cgroup, I installed the package cgroup-bin
and add the following group to the file /etc/cgconfig.conf
:
group browsers {
cpu {
# Set the relative share of CPU resources equal to 25%
cpu.shares = "256";
}
memory {
# Allocate at most 1 GB of memory to tasks
memory.limit_in_bytes = "1G";
# Apply a soft limit of 512 MB to tasks
memory.soft_limit_in_bytes = "768M";
}
}
Then I added one new rule to the file /etc/cgrules.conf
to add any new Chrome process launched by my own user (jojeda
) to the cgroup browsers
:
# user:process subsystems group
jojeda:/usr/lib/chromium-browser/chromium-browser cpu,memory browsers
And then I restarted the cgconfig
service:
$ sudo service cgconfig restart
Now all the new chromium
process that I'll launch with my user jojeda
will be under the cgroup browsers
with its memory and cpu limits.