Message ID | CAHMqkF7XOhzrQJODwOGnz-0Y8echtdQPEamcNL126w5ctW4+Xg@mail.gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi MingXin, Li, Does the below make sense to you? Thanks! sage On Tue, 28 Nov 2017, YuFan Chen wrote: > Hi, > > Before Jewel, the code uses "atime" to distinguish hot/cold data: > > agent_estimate_atime_temp() calculates the distance. > It means colder data gets longer distance (larger value) > > > In Jewel, it changes to use temperature with weight. > So, colder data gets smaller value. > > However, it still use the "old semantics" to determine evicting or not in > ReplicatedPG::agent_estimate_atime_temp(); > > if (1000000 - temp_upper >= agent_state->evict_effort) > return false; > > > if there is no misunderstanding, should it change to that: > > --- a/src/osd/ReplicatedPG.cc > +++ b/src/osd/ReplicatedPG.cc > @@ -12211,7 +12211,7 @@ bool > ReplicatedPG::agent_maybe_evict(ObjectContextRef& obc, bool > after_flush) > delete f; > *_dout << dendl; > > - if (1000000 - temp_upper >= agent_state->evict_effort) > + if (temp_upper >= agent_state->evict_effort) > return false; > } > > Yu Fan > -- > To unsubscribe from this list: send the line "unsubscribe ceph-devel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > > -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi, This makes sense, the variable name 'temp_upper' is really confusing which in fact does not count the number of hot objects. However, personally, I prefer use temp_lower as follows, if (temp_lower >= agent_state->evict_effort) return false; Cheers, Li Wang 2017-11-28 21:20 GMT+08:00 Sage Weil <sage@newdream.net>: > Hi MingXin, Li, > > Does the below make sense to you? > > Thanks! > sage > > > On Tue, 28 Nov 2017, YuFan Chen wrote: > >> Hi, >> >> Before Jewel, the code uses "atime" to distinguish hot/cold data: >> >> agent_estimate_atime_temp() calculates the distance. >> It means colder data gets longer distance (larger value) >> >> >> In Jewel, it changes to use temperature with weight. >> So, colder data gets smaller value. >> >> However, it still use the "old semantics" to determine evicting or not in >> ReplicatedPG::agent_estimate_atime_temp(); >> >> if (1000000 - temp_upper >= agent_state->evict_effort) >> return false; >> >> >> if there is no misunderstanding, should it change to that: >> >> --- a/src/osd/ReplicatedPG.cc >> +++ b/src/osd/ReplicatedPG.cc >> @@ -12211,7 +12211,7 @@ bool >> ReplicatedPG::agent_maybe_evict(ObjectContextRef& obc, bool >> after_flush) >> delete f; >> *_dout << dendl; >> >> - if (1000000 - temp_upper >= agent_state->evict_effort) >> + if (temp_upper >= agent_state->evict_effort) >> return false; >> } >> >> Yu Fan >> -- >> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html >> >> > -- > To unsubscribe from this list: send the line "unsubscribe ceph-devel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi, Would you please send a pr to fix this Cheers, Li Wang 2017-11-30 23:45 GMT+08:00 YuFan Chen <wiz.chen@gmail.com>: > Hi, > Yes, it really means the ranking level in a > 'temperature' rating scale. > Using 'temp_lower' would be better. > > Thanks. > > Yufan Chen > > > Li Wang <laurence.liwang@gmail.com> 於 2017年11月30日 週四 下午4:51 寫道: >> >> Hi, >> This makes sense, the variable name 'temp_upper' is really confusing >> which in fact does not count the number of hot objects. However, >> personally, >> I prefer use temp_lower as follows, >> >> if (temp_lower >= agent_state->evict_effort) >> return false; >> >> Cheers, >> Li Wang >> >> 2017-11-28 21:20 GMT+08:00 Sage Weil <sage@newdream.net>: >> > Hi MingXin, Li, >> > >> > Does the below make sense to you? >> > >> > Thanks! >> > sage >> > >> > >> > On Tue, 28 Nov 2017, YuFan Chen wrote: >> > >> >> Hi, >> >> >> >> Before Jewel, the code uses "atime" to distinguish hot/cold data: >> >> >> >> agent_estimate_atime_temp() calculates the distance. >> >> It means colder data gets longer distance (larger value) >> >> >> >> >> >> In Jewel, it changes to use temperature with weight. >> >> So, colder data gets smaller value. >> >> >> >> However, it still use the "old semantics" to determine evicting or >> >> not in >> >> ReplicatedPG::agent_estimate_atime_temp(); >> >> >> >> if (1000000 - temp_upper >= agent_state->evict_effort) >> >> return false; >> >> >> >> >> >> if there is no misunderstanding, should it change to that: >> >> >> >> --- a/src/osd/ReplicatedPG.cc >> >> +++ b/src/osd/ReplicatedPG.cc >> >> @@ -12211,7 +12211,7 @@ bool >> >> ReplicatedPG::agent_maybe_evict(ObjectContextRef& obc, bool >> >> after_flush) >> >> delete f; >> >> *_dout << dendl; >> >> >> >> - if (1000000 - temp_upper >= agent_state->evict_effort) >> >> + if (temp_upper >= agent_state->evict_effort) >> >> return false; >> >> } >> >> >> >> Yu Fan >> >> -- >> >> To unsubscribe from this list: send the line "unsubscribe ceph-devel" >> >> in >> >> the body of a message to majordomo@vger.kernel.org >> >> More majordomo info at http://vger.kernel.org/majordomo-info.html >> >> >> >> >> > -- >> > To unsubscribe from this list: send the line "unsubscribe ceph-devel" in >> > the body of a message to majordomo@vger.kernel.org >> > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Okay. I will do it. Yufan Chen 2017-12-01 20:56 GMT+08:00 Li Wang <laurence.liwang@gmail.com>: > Hi, > Would you please send a pr to fix this > > Cheers, > Li Wang > > 2017-11-30 23:45 GMT+08:00 YuFan Chen <wiz.chen@gmail.com>: >> Hi, >> Yes, it really means the ranking level in a >> 'temperature' rating scale. >> Using 'temp_lower' would be better. >> >> Thanks. >> >> Yufan Chen >> >> >> Li Wang <laurence.liwang@gmail.com> 於 2017年11月30日 週四 下午4:51 寫道: >>> >>> Hi, >>> This makes sense, the variable name 'temp_upper' is really confusing >>> which in fact does not count the number of hot objects. However, >>> personally, >>> I prefer use temp_lower as follows, >>> >>> if (temp_lower >= agent_state->evict_effort) >>> return false; >>> >>> Cheers, >>> Li Wang >>> >>> 2017-11-28 21:20 GMT+08:00 Sage Weil <sage@newdream.net>: >>> > Hi MingXin, Li, >>> > >>> > Does the below make sense to you? >>> > >>> > Thanks! >>> > sage >>> > >>> > >>> > On Tue, 28 Nov 2017, YuFan Chen wrote: >>> > >>> >> Hi, >>> >> >>> >> Before Jewel, the code uses "atime" to distinguish hot/cold data: >>> >> >>> >> agent_estimate_atime_temp() calculates the distance. >>> >> It means colder data gets longer distance (larger value) >>> >> >>> >> >>> >> In Jewel, it changes to use temperature with weight. >>> >> So, colder data gets smaller value. >>> >> >>> >> However, it still use the "old semantics" to determine evicting or >>> >> not in >>> >> ReplicatedPG::agent_estimate_atime_temp(); >>> >> >>> >> if (1000000 - temp_upper >= agent_state->evict_effort) >>> >> return false; >>> >> >>> >> >>> >> if there is no misunderstanding, should it change to that: >>> >> >>> >> --- a/src/osd/ReplicatedPG.cc >>> >> +++ b/src/osd/ReplicatedPG.cc >>> >> @@ -12211,7 +12211,7 @@ bool >>> >> ReplicatedPG::agent_maybe_evict(ObjectContextRef& obc, bool >>> >> after_flush) >>> >> delete f; >>> >> *_dout << dendl; >>> >> >>> >> - if (1000000 - temp_upper >= agent_state->evict_effort) >>> >> + if (temp_upper >= agent_state->evict_effort) >>> >> return false; >>> >> } >>> >> >>> >> Yu Fan >>> >> -- >>> >> To unsubscribe from this list: send the line "unsubscribe ceph-devel" >>> >> in >>> >> the body of a message to majordomo@vger.kernel.org >>> >> More majordomo info at http://vger.kernel.org/majordomo-info.html >>> >> >>> >> >>> > -- >>> > To unsubscribe from this list: send the line "unsubscribe ceph-devel" in >>> > the body of a message to majordomo@vger.kernel.org >>> > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
--- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -12211,7 +12211,7 @@ bool ReplicatedPG::agent_maybe_evict(ObjectContextRef& obc, bool after_flush) delete f; *_dout << dendl; - if (1000000 - temp_upper >= agent_state->evict_effort) + if (temp_upper >= agent_state->evict_effort) return false;