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
osd: Make dmclock's anticipation timeout be configurable #18827
Conversation
src/osd/mClockClientQueue.cc
Outdated
mClockClientQueue::mClockClientQueue(CephContext *cct, | ||
double anticipation_timeout) : | ||
queue(std::bind(&mClockClientQueue::op_class_client_info_f, this, _1), | ||
anticipation_timeout), |
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.
How is anticipation_timeout used ?
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.
My bad. I missed something.
Thank you for pointing that. I fixed it.
a571add
to
7f46c18
Compare
@TaewoongKim This PR seems that only the anticipation timeout is set. Could you explain how this value is used ? |
@myoungwon Yes, it just set dmclock's parameter Dmclock scheduler supports IOPS reservation. This is because dmclock reset the time tag of worker A's IO. Setting anticipation timeout can prevent this situation. |
@TaewoongKim need rebase |
7f46c18
to
496c610
Compare
Signed-off-by: Taewoong Kim <taewoong.kim@sk.com>
496c610
to
d2ea0b5
Compare
@myoungwon Rebased |
This adds a configuration option that can control anticipation timeout for dmclock
This helps more accurate QoS or priority based scheduling when dmclock is used with this.
By setting with an appropriate value, a client or an operation type could take their unused resource that could be forfeited by other aggressive clients or operation types.
Signed-off-by: Taewoong Kim taewoong.kim@sk.com