[sheepdog] [PATCH 0/3] work: implement a dynamically changing thread pool
MORITA Kazutaka
morita.kazutaka at lab.ntt.co.jp
Mon Oct 22 06:31:02 CEST 2012
Currently, sheep calls a pthread_create for every I/O request, but the
overhead is not so cheap. On my environment, it takes 320
microseconds for sheep to process 4 KB write, but I found that sheep
spends 30~40 microseconds in pthread_create.
This series removes a short thread and implements a dynamic worker
thread pool based on the previous work queue implementation. With
this series, the 4 KB write performance was increased from 3100 IOPS
to 3350 IOPS on my environment.
MORITA Kazutaka (3):
work: remove short thread
work: enlarge the number of worker threads dynamically
work: shrink the number of worker threads dynamically
include/util.h | 2 +-
lib/logger.c | 4 +-
sheep/work.c | 168 +++++++++++++++++++++++++++----------------------------
sheep/work.h | 5 +-
4 files changed, 89 insertions(+), 90 deletions(-)
--
1.7.2.5
More information about the sheepdog
mailing list