[prev in list] [next in list] [prev in thread] [next in thread] 

List:       debian-user
Subject:    Re: FIREFOX is killing the whole PC  Part III
From:       hede <debian452 () der-he ! de>
Date:       2022-11-26 16:59:22
Message-ID: b1476cffa1cad089c3175e4b6a8994fb () der-he ! de
[Download RAW message or body]

On 23.11.2022 17:09, Schwibinger Michael wrote:
> Good afternoon
> 
> I saw cgroups.
> 
> Thank You.
> 
> But I cant understand.
> 
> Is it a concept to limit all tasks?

You can limit all, a single one or (the name suggests this one) a group of processes. \
There are plenty of system resources which can be configured. 

> Where can I find a introduction?

I don't know either. But maybe this one is fine to start with:

https://www.redhat.com/sysadmin/cgroups-part-one

Some examples limiting Firefox to 500 MB of RAM and low CPU resources, do as root:

####

# cd into the cgroup filesystem, defaults to cgroup2 on Debian Bullseye, others may \
vary cd /sys/fs/cgroup/

# create a new cgroup
mkdir ffox

# cd into the cgroup dir
cd ffox/

# add all firefox-esr processes to the cgroup, all newly created subprocesses will \
automatically get added to ffox cgroup for i in $(pidof firefox-esr); do echo $i > \
cgroup.procs ; done

# limit memory usage to 500 MB
echo 500M > memory.high 

# limit cpu usage to less wight (defaults to 100)
echo 10 >  cpu.weight

# also limit swap memory because else it will fill swap after the memory limit kicks \
in echo 100M > memory.swap.max 

####

... now watch Firefox stall if other processes either use CPU resources or Firefox \
tries to consume more than 600 MB of Memory (which is small nowadays for multiple \
tabs; but mind, if Firefox already has more memory allocated it will keep this). 

Typically you can use some more friendly userspace interface. But don't think of \
using cgroup-tools with Debian Bullseye: Version 0.41 in Bullseyes repository \
supports cgroups V1 only while Bullseyes Kernel defaults to V2.

There's plenty of help you can find with your favourite Internet search engine. 

regards
hede


PS: to remove Firefox from the ffox cgroup either restart Firefox or:

cd /sys/fs/cgroup/ffox/ && for i in $(cat cgroup.procs); do echo $i > ../cgroup.procs \
; done 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic