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@xxxxxxxxxxxx>: > 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@xxxxxxxxxxxxxxx >> 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@xxxxxxxxxxxxxxx > 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@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html