From 566610d41bb224b3913ded99a53d1e2efa0a0d85 Mon Sep 17 00:00:00 2001 From: dormando Date: Tue, 2 Oct 2018 13:13:28 -0700 Subject: extstore: balance IO thread queues queues were roundrobin before. during sustained overload some queues can get behind while other stays empty. Simply do a bit more work to track depth and pick the lowest queue. This is fine for now since the bottleneck remains elsewhere. Been meaning to do this, benchmark work made it more obvious. --- extstore.h | 1 + 1 file changed, 1 insertion(+) (limited to 'extstore.h') diff --git a/extstore.h b/extstore.h index 6814415..0a27d0c 100644 --- a/extstore.h +++ b/extstore.h @@ -34,6 +34,7 @@ struct extstore_stats { uint64_t bytes_read; /* wbuf - read -> bytes read from storage */ uint64_t bytes_used; /* total number of bytes stored */ uint64_t bytes_fragmented; /* see above comment */ + uint64_t io_queue; struct extstore_page_data *page_data; }; -- cgit v1.2.1