-
Notifications
You must be signed in to change notification settings - Fork 307
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
HPCC-32764 Periodically log information about cpu-throttling #19186
Conversation
Jira Issue: https://hpccsystems.atlassian.net//browse/HPCC-32764 Jirabot Action Result: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On my system and on the Azure LXC containers I don't think you need to get the cgroup you are in ?, if you read from /sys/fs/cgroup/cpu/cpu.stat I think it should be for the cgroup you are currently in.
I mean I think its ok to do this - but in LXC I don't think the current cgroup name is in /proc/self/cgroup so it may be better to just try and read from /sys/fs/cgroup/cpu/cpu.stat ? Or maybe do this if the current cgroup is empty ?
And the time string I see is "throttled_time" (in ns) so probably need to check for both.
Running on ubuntu 22.04 /sysd/fs/cgroup/cpu.stat does not contain the any throttled information. Please see next commit |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tested and it looks good on the Azure LXC containers.
On my Ubuntu system, with v1, if I -
sudo cgcreate -g cpu:/cgtest
Then /prof/self/cgroup shows the cgroup name on the cpu,cpuacct line, not on the 0::/ line, as in -
cat /proc/self/cgroup
13:misc:/
12:pids:/user.slice/user-1847.slice/user@1847.service
11:cpu,cpuacct:/cgtest
10:freezer:/
9:rdma:/
8:net_cls,net_prio:/
7:perf_event:/
6:cpuset:/
5:memory:/user.slice/user-1847.slice/user@1847.service
4:hugetlb:/
3:devices:/user.slice
2:blkio:/user.slice
1:name=systemd:/user.slice/user-1847.slice/user@1847.service/gnome-launched-org.codeberg.dnkl.foot.desktop-227483.scope
0::/user.slice/user-1847.slice/user@1847.service/gnome-launched-org.codeberg.dnkl.foot.desktop-227483.scope
So I think its ok - as we will then read from /sys/fs/cgroup/cpu/cpu.stat
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good.
Tested ok on v1 also.
Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Type of change:
Checklist:
Smoketest:
Testing: