Messages in this thread | | | From | Ming Lei <> | Subject | [PATCH 0/4] block: account io: kill atomic operations | Date | Thu, 16 Jul 2015 11:16:43 +0800 |
| |
Hi,
This patches kills two kinds of atomic operations in block accounting I/O.
The 1st two patches convert atomic refcount of partition into percpu refcount.
The 2nd two patches converts partition->in_flight[] into percpu variable.
With this change, ~15% throughput improvement can be observed when running fio(randread) over null blk in a dual-socket environment.
block/bio.c | 4 ++-- block/blk-core.c | 5 ++-- block/blk-merge.c | 2 +- block/genhd.c | 9 ++++--- block/partition-generic.c | 17 ++++++------- drivers/md/dm.c | 10 ++++---- drivers/nvdimm/core.c | 4 ++-- include/linux/genhd.h | 61 +++++++++++++++++++++++++++++++++-------------- 8 files changed, 72 insertions(+), 40 deletions(-)
Thanks, Ming
| |