Se eu tiver um cgroup como user.slice
e tiver CPUAccounting=true
configurado, estou querendo saber como alguém calcularia o uso da CPU desse cgroup específico durante um período de tempo (como 1s), usando cpuacct.usage
ou cpuacct.stat
. Eu sei que cpuacct.usage
fornece o tempo de CPU (em nanossegundos), que pode ser usado para calcular a porcentagem de CPU subtraindo dois instantâneos dele durante um período de tempo e dividindo-o pelo tempo total de CPU do sistema no mesmo período de tempo (correto me se eu estiver errado), mas não tenho certeza de como obter o tempo total da CPU em um período de tempo.
Existe uma maneira de obter o tempo total da CPU durante um período de tempo ou usar um recurso de fórmula/cgroup diferente para calcular o uso da CPU? Desde já, obrigado :)
Nota: Estou ciente de systemd-cgtop
, que fornece algumas dessas informações, porém quero calcular o uso da CPU programaticamente sem precisar analisarsystemd-cgtop