A little more context on why whole-process scope is needed:
A QEMU domain's resource consumption is not limited to its vCPU
threads. IOThreads, the emulator thread, and worker threads all perform
work on behalf of the guest and consume energy. Monitoring only vCPU
threads therefore leaves part of the VM's energy consumption
unattributed, preventing reliable whole-VM energy accounting. Cache and
memory-bandwidth monitoring and allocation have the same gap.
Managing these threads individually is not robust because some are
created dynamically. Assigning QEMU to the resctrl group before thread
creation uses the kernel's inheritance mechanism to cover all current
and future threads.
This is needed for an active customer deployment where the VM is the
unit of energy accounting. The existing per-vCPU behavior remains
unchanged when the vcpus attribute is specified.
@Michal Prívozník, since you reviewed the related
resctrl fixes, would you be able
to take a look at this series or suggest the right reviewer? The main
question is whether whole-process scope, represented by an omitted
vcpus attribute, is the right interface.
Thanks,
Jedrzej
Ta wiadomość wraz z załącznikami jest przeznaczona dla określonego adresata i może zawierać informacje poufne. W razie przypadkowego otrzymania tej wiadomości, prosimy o powiadomienie nadawcy oraz trwałe jej usunięcie; jakiekolwiek przeglądanie lub rozpowszechnianie jest zabronione.
This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). If you are not the intended recipient, please contact the sender and delete all copies; any review or distribution by others is strictly prohibited.