Closed Dorence closed 3 weeks ago
@Qiaolin-Yu You may take a look and answer it.
Apologies for the confusion caused by the inappropriate variable name. Here, memory_usage
actually represents the free memory ratio, calculated in db/compaction/remote_compaction/utils.h
as static_cast<double>(m.MemFree) / static_cast<double>(m.MemTotal);
. Therefore, the rule here is that the CSA will be filtered out when CPU utilization reaches 70%. If you'd like to use the 80% threshold mentioned in the paper, simply change this value to 0.2.
As memtioned in CaaS-LSM paper 4.2.3, the Scheduler filters out CSAs where the current CPU or memory utilization rate exceeds 80%. In
db/compaction/remote_compaction/procp_server.cc
, however, the statement iscsa_status_map_[best_worker].memory_usage() < 0.3
. To what extent does the difference affect scheduling when memory utilization is high?