Cgroup2 dose not support controling real-time processes and the cpu
controller can only be enabled when all RT processes are in the root cgroup.
RT stuff was being overhauled when cpu controller interface for cgroup
unified hierarchy was being implemented in 2017. It was decided that we
would like to wait till the RT side settles down and proceed with an
interface that better matches RT.
Is it possible for userspace program to control cpu usage time of RT
process through cgroup2 now? If not, how is the current state looking
and is there any proposed solution?
Hello,
On Sat, Sep 24, 2022 at 05:26:20PM +0800, lujialin (A) wrote:
> Cgroup2 dose not support controling real-time processes and the cpu
> controller can only be enabled when all RT processes are in the root cgroup.
>
> RT stuff was being overhauled when cpu controller interface for cgroup
> unified hierarchy was being implemented in 2017. It was decided that we
> would like to wait till the RT side settles down and proceed with an
> interface that better matches RT.
>
> Is it possible for userspace program to control cpu usage time of RT process
> through cgroup2 now? If not, how is the current state looking and is there
> any proposed solution?
Not right now. The hard allocation model is pretty challenging to work with
on cgroup1 - they get enabled when cpu controller gets enabled and being
hard allocations, not allocating any prevents the cgroups from using RT at
all while allocating by default takes away from what others can use whether
that allocation is used or not, so some distros turned them off last I
checked. Overall, I'm not sure hard allocations done this way is all that
useful to manage hierarchically given that the resource has to be hard
partitioned anyway.
Can you describe your usecase?
Thanks.
--
tejun