[systemd-devel] [RFC PATCH] Add rdt/resctrl support in systemd
Lennart Poettering
lennart at poettering.net
Fri Jun 8 11:47:28 UTC 2018
On Fr, 08.06.18 17:54, Zhangyanfei (YF) (yanfei.zhang at huawei.com) wrote:
> Hello
>
> The linux kernel has support all Intel RDT(Resource Director Technology)[1] features,
> via a filesystem resctrlfs [2].
> Libvirt has introduced CAT into it snice v4.1.0 [3].And Marcelo tried to post a
> patch to add CAT support into systemd before but the way the patch did (gluing a python tool)
> is not acceptable by the maintainer [4].
>
> I think including RDT support in systemd is necessary because we should have a
> central place to control how we use the RDT features. We should have a global control
> over the resctrlfs when applications in the system want to use RDT.
>
> My initial idea is:
> 1. resctrlfs should be mounted/unmounted in systemd just like
> cgroupfs.
sounds fine to me
though this does make me wonder: what's the reason this stuff is not
exposed via cgroups anyway? why is this form of resource management
separate from cgroups resource mgmt?
> 2. Systemd should lock/unlock resctrlfs when ncessary to avoid
> contending.
what do you mean by lock/unlock?
Note that i have no understanding of RDT whatsoever, hence if
"lock"/"unlock" is some RDT term in this context, please elaborate.
> 3. Support RDT allocation control in *slice* unit instead of *service* unit. This is
> different from what Marcelo did in his patch. resctrlfs has some limitations due to
> the hardware:
> a.The directory for allocation (CAT/MBA) is limited. In my machine, the max number
> is only 8, so we can only have 8 groups at most to use the RDT allocation control.
> b.We can only create directories for allocation in the root directory, no nesting.
> So if we want to use the RDT to control shared resources in the whole system,
> we must group tasks/services together.
I'd probably permit these settings on all of slice, service, scope units, but preferably apply
them to units close to the root.
> Below is the RFC patch that adding CAT in systemd. It only including implementations related
> to 3 in the above idea.
Please always submit patches through github these days, as PRs. The
review tools are much much nicer there...
> L3Cat=L3:1=001
We generally expose settings in normalized, readable, user friendly
syntax. The above appears very cryptic and abbreviated to me. I'll
take readability any day over cryptic appreviations.
> + EXIT_RESCTRL,
Why is this called "resctrl" btw? That's such an extremely generic name...
Lennart
--
Lennart Poettering, Red Hat
More information about the systemd-devel
mailing list