-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
[Carry #3205] libct/cg: add CFS bandwidth burst for CPU #3749
Conversation
Seems the systemd is not support the CPU burst feature yet. systemd/systemd#26658 So should we keep pushing this PR or hold on it utill the feature has been supported in systemd @AkihiroSuda |
You can just let fs2 handle it runc/libcontainer/cgroups/systemd/v2.go Lines 168 to 170 in a187c84
|
Got it |
ed84533
to
a88bc77
Compare
But the burst feature supports both cv1 and cv2. hmmm I think maybe I can limit it should be only being used in non-systemd driver? @AkihiroSuda |
d3e5725
to
5c01766
Compare
@AkihiroSuda Hi, I have written the test, but the rootless test failed. I have no idea what happened. would you mind take a look at for me ? |
https://github.com/opencontainers/runc/actions/runs/4462135582/jobs/7836459757?pr=3749 It seems strange why |
c4b923a
to
f30ade3
Compare
fine, I figured out the reason, the rootless CI has been passed |
5f7c22c
to
b3833af
Compare
https://cirrus-ci.com/task/5913443228712960 Should I skip the systemd test for burst? cc @AkihiroSuda |
@AkihiroSuda ping(would you mind to give me some advise about test failed in Centos? |
b3833af
to
314c8dc
Compare
314c8dc
to
a0f01f4
Compare
CI failing |
f81f708
to
359c6ab
Compare
@AkihiroSuda It seems like there may be some compatibility issues between CPU Burst and Centos7 and Centos8, which could be causing the CI to fail. Would your mind to give me some suggestion about how to pass all the CI? |
I guess you can just check existence of |
Seems good, I'll make a try! Thanks a lot! |
4d8d3df
to
c6fd33f
Compare
@lifubang Thanks for the review, all things done |
d1d66db
to
7a152a3
Compare
7a152a3
to
e1b7f6a
Compare
I'm so sorry to let you spend more time on this. We need to cover as many test cases as possible. ☕ |
I think we already have enough test cases here. May I ask what's kind of the corner case in your thought not covered by current test code? |
For example, how to clear |
e1b7f6a
to
e05506e
Compare
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.
LGTM
Left some further works:
v1: fail, v2: succ We can do these works in further PRs. |
@AkihiroSuda PTAL. I think this could be merged. |
Burstable CFS controller is introduced in Linux 5.14. This helps with parallel workloads that might be bursty. They can get throttled even when their average utilization is under quota. And they may be latency sensitive at the same time so that throttling them is undesired. This feature borrows time now against the future underrun, at the cost of increased interference against the other system users, by introducing cfs_burst_us into CFS bandwidth control to enact the cap on unused bandwidth accumulation, which will then used additionally for burst. The patch adds the support/control for CFS bandwidth burst. runtime-spec: opencontainers/runtime-spec#1120 Co-authored-by: Akihiro Suda <[email protected]> Co-authored-by: Nadeshiko Manju <[email protected]> Signed-off-by: Kailun Qin <[email protected]>
e05506e
to
e158483
Compare
Carry #3205