Re: Split process across multiple schedulers?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello.

On Mon, Mar 14, 2022 at 03:19:56PM +0000, Olsson John <john.olsson@xxxxxxxxxxxxx> wrote:
> I have tried reading the documentation for CGroups V1 and V2 and it
> seems that there is one usecase that we are interested in that *is*
> supported by CGroups V1 but not by CGroups V2.

Are you missing CONFIG_RT_GROUP_SCHED and v1 cpu controller's
cpu.rt_{runtime,period}_us? (Just asking, you didn't mention this
explicitly in your e-mail but it sounds so and it's a thing that's
indeed missing in v2.)

> My understanding of CGroups V1 is that it is possible to have one
> scheduler associated  there are use cases where you might want to have
> one kind of scheduler for the VMM process (for instance CFS) and
> another scheduler for the virtual core threads (for instance FIFO).

sched_setscheduler(2) applies to threads regardless of cgroup
membership, there's no change between v1 and v2.

(Without CONFIG_RT_GROUP_SCHED all RT threads are effectively in the
root cgroup.)

> My conclusion after reading the documentation for CGroups V2 is that
> the above scenario is no longer possible to do. Or have I
> misunderstood something here?

You may need to enable threaded mode on v2 (see cgroup.type) to
manipulate with individual threads across cgroups. (E.g. if you want to
use cpuset controller to pin/restrict individual threads.)

Regards,
Michal



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]     [Monitors]

  Powered by Linux