[systemd-devel] Is it meant to be possible to set IO[Read|Write]BandwidthMax on a slice ?
Hadrien Grasland
hadrien.grasland at ijclab.in2p3.fr
Thu Apr 8 15:48:20 UTC 2021
Le 08/04/2021 à 17:27, Mantas Mikulėnas a écrit :
> On Thu, Apr 8, 2021 at 6:19 PM Hadrien Grasland
> <hadrien.grasland at ijclab.in2p3.fr
> <mailto:hadrien.grasland at ijclab.in2p3.fr>> wrote:
>
> Le 08/04/2021 à 16:11, Lennart Poettering a écrit :
> > On Do, 08.04.21 12:24, Hadrien Grasland
> (hadrien.grasland at ijclab.in2p3.fr
> <mailto:hadrien.grasland at ijclab.in2p3.fr>) wrote:
> >
> >> Hi everyone,
> >>
> >> In a scenario where running benchmarks on dedicated hardware is not
> >> possible, I'm trying to momentarily cap the I/O bandwidth used by
> >> interactive user sessions while benchmarks are running, in
> order to improve
> >> the stability of said benchmark's I/O performance.
> > Is this on cgroupsv1 or cgroupsv2?
> >
> > IIRC there was some issue that the block io controller wasn't fully
> > recursive on cgroupsv1. It should work on cgroupsv2.
>
> This is on a hybrid cgroup configuration. I (perhaps mistakenly)
> assumed
> that modern systemd (v246) will use the cgroups v2 hierarchy in that
> case, even though cgroups v1 is still exposed for compatibility with
> older apps.
>
>
> If e.g. the io controller is exposed through cgroups v1, as far as I
> know it cannot be simultaneously used through cgroups v2, and vice versa.
>
> (Hmm, wasn't there an option to choose which controllers to assign to
> v1 and which ones to v2?)
Ah yes indeed, I missed this important bit when I last read
https://systemd.io/CGROUP_DELEGATION/ :
"Note that in [hybrid] mode the unified hierarchy won’t have controllers
attached, the controllers are all mounted as separate hierarchies as in
legacy mode, i.e. |/sys/fs/cgroup/unified/| is purely and exclusively
about core cgroup v2 functionality and not about resource management."
Then I guess unless your parenthesized comment is correct (which means
that the above doc is out of date), I must use pure unified/cgroups2
mode in order to do what I want with IO... except I can't switch to it
because this will break slurm's cgroups support, which I need for a
couple of other things, as it seems Slurm only supports v1 at the moment
: https://groups.google.com/g/slurm-users/c/z57-Z3Tz0Oc?pli=1 . Hmmm...
I'd appreciate any confirmation/refuttal on the ability to do adjust
controller asignment in a fine-grained way, otherwise it seems I'll need
to live without I/O caps until slurm implements cgroup v2 support.
Hadrien
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/systemd-devel/attachments/20210408/3f2574a3/attachment.htm>
More information about the systemd-devel
mailing list