uint64_t min,
uint64_t max,
uint64_t target,
- bool reserve_extra) :
+ bool reserve_extra,
+ const std::string& name) :
cct(c),
caches{},
min_mem(min),
max_mem(max),
target_mem(target),
tuned_mem(min),
- reserve_extra(reserve_extra)
+ reserve_extra(reserve_extra),
+ name(name.empty() ? "prioritycache" : name)
{
- PerfCountersBuilder b(cct, "prioritycache",
+ PerfCountersBuilder b(cct, name,
MallocStats::M_FIRST, MallocStats::M_LAST);
b.add_u64(MallocStats::M_TARGET_BYTES, "target_bytes",
ceph_assert(end < PERF_COUNTER_MAX_BOUND);
indexes.emplace(name, std::vector<int>(Extra::E_LAST + 1));
- PerfCountersBuilder b(cct, "prioritycache:" + name, start, end);
+ PerfCountersBuilder b(cct, this->name + ":" + name, start, end);
b.add_u64(cur_index + Priority::PRI0, "pri0_bytes",
"bytes allocated to pri0", "p0",
uint64_t target_mem = 0;
uint64_t tuned_mem = 0;
bool reserve_extra;
-
+ std::string name;
public:
Manager(CephContext *c, uint64_t min, uint64_t max, uint64_t target,
- bool reserve_extra);
+ bool reserve_extra, const std::string& name = std::string());
~Manager();
void set_min_memory(uint64_t min) {
min_mem = min;
binned_kv_cache = store->db->get_priority_cache();
if (store->cache_autotune && binned_kv_cache != nullptr) {
pcm = std::make_shared<PriorityCache::Manager>(
- store->cct, min, max, target, true);
+ store->cct, min, max, target, true, "bluestore-pricache");
pcm->insert("kv", binned_kv_cache, true);
pcm->insert("meta", meta_cache, true);
pcm->insert("data", data_cache, true);
// do final dump
store->_record_allocation_stats();
stop = false;
+ pcm = nullptr;
return NULL;
}