Messages in this thread | | | From | "Pavel Begunkov (Silence)" <> | Subject | [PATCH 0/7] Adjust hybrid polling sleep time | Date | Tue, 30 Apr 2019 10:34:12 +0300 |
| |
From: Pavel Begunkov <asml.silence@gmail.com>
Sleep time for adaptive hybrid polling is coarse and can be improved to decrease CPU load. Use variation of the 3-sigma rule and runtime tuning.
This approach gives up to 2x CPU load reduction keeping the same latency distribution and throughput.
Pavel Begunkov (7): blk-iolatency: Fix zero mean in previous stats blk-stats: Introduce explicit stat staging buffers blk-mq: Fix disabled hybrid polling blk-stats: Add left mean deviation to blk_stats blk-mq: Precalculate hybrid polling time blk-mq: Track num of overslept by hybrid poll rqs blk-mq: Adjust hybrid poll sleep time
block/blk-core.c | 7 +- block/blk-iolatency.c | 60 ++++++++++---- block/blk-mq-debugfs.c | 14 ++-- block/blk-mq.c | 163 ++++++++++++++++++++++++++++---------- block/blk-stat.c | 67 +++++++++++++--- block/blk-stat.h | 15 +++- include/linux/blk_types.h | 9 +++ include/linux/blkdev.h | 17 +++- 8 files changed, 271 insertions(+), 81 deletions(-)
-- 2.21.0
| |