]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/seastar/tests/perf/fair_queue_perf.cc
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / seastar / tests / perf / fair_queue_perf.cc
index 52f07a3f7dbf95bc2309111c249e83a1336b6c34..8d54d83b7f4c857872ad1e7a0458575472c72a7a 100644 (file)
@@ -37,18 +37,27 @@ struct local_fq_and_class {
     seastar::fair_queue sfq;
     unsigned executed = 0;
 
+    static fair_group::config fg_config() {
+        fair_group::config cfg;
+        cfg.weight_rate = std::numeric_limits<int>::max();
+        cfg.size_rate = std::numeric_limits<int>::max();
+        return cfg;
+    }
+
     seastar::fair_queue& queue(bool local) noexcept { return local ? fq : sfq; }
 
     local_fq_and_class(seastar::fair_group& sfg)
-        : fg(seastar::fair_group::config(1, 1))
+        : fg(fg_config())
         , fq(fg, seastar::fair_queue::config())
         , sfq(sfg, seastar::fair_queue::config())
     {
         fq.register_priority_class(cid, 1);
+        sfq.register_priority_class(cid, 1);
     }
 
     ~local_fq_and_class() {
         fq.unregister_priority_class(cid);
+        sfq.unregister_priority_class(cid);
     }
 };
 
@@ -70,8 +79,15 @@ struct perf_fair_queue {
 
     seastar::fair_group shared_fg;
 
+    static fair_group::config fg_config() {
+        fair_group::config cfg;
+        cfg.weight_rate = std::numeric_limits<int>::max();
+        cfg.size_rate = std::numeric_limits<int>::max();
+        return cfg;
+    }
+
     perf_fair_queue()
-        : shared_fg(seastar::fair_group::config(smp::count, smp::count))
+        : shared_fg(fg_config())
     {
         local_fq.start(std::ref(shared_fg)).get();
     }