All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hao Xu <hao.xu@linux.dev>
To: io-uring@vger.kernel.org
Cc: Jens Axboe <axboe@kernel.dk>, Pavel Begunkov <asml.silence@gmail.com>
Subject: Re: [PATCH v5 00/11] fixed worker
Date: Tue, 12 Jul 2022 16:32:44 +0800	[thread overview]
Message-ID: <7d5d120d-941d-0451-b1f3-ed67baa8ecbe@linux.dev> (raw)
In-Reply-To: <20220627133541.15223-1-hao.xu@linux.dev>

On 6/27/22 21:35, Hao Xu wrote:
> From: Hao Xu <howeyxu@tencent.com>
> 
> This is the second version of fixed worker implementation.
> Wrote a nop test program to test it, 3 fixed-workers VS 3 normal workers.
> normal workers:
> ./run_nop_wqe.sh nop_wqe_normal 200000 100 3 1-3
>          time spent: 17314274 usecs      IOPS: 1155116
>          time spent: 17016942 usecs      IOPS: 1175299
>          time spent: 17908684 usecs      IOPS: 1116776
> 
> fixed workers:
> ./run_nop_wqe.sh nop_wqe_fixed 200000 100 3 1-3
>          time spent: 10464397 usecs      IOPS: 1911242
>          time spent: 9610976 usecs       IOPS: 2080954
>          time spent: 9807361 usecs       IOPS: 2039284
> 
> About 2x improvement. From perf result, almost no acct->lock contension.
> Test program: https://github.com/HowHsu/liburing/tree/fixed_worker
> liburing/test/nop_wqe.c
> 
> v3->v4:
>   - make work in fixed worker's private worfixed worker
>   - tweak the io_wqe_acct struct to make it clearer
> 
> v4->v5:
>   - code clean
>   - rebase against the for-5.20/io_uring
> 
> 
> Hao Xu (11):
>    io-wq: add a worker flag for individual exit
>    io-wq: change argument of create_io_worker() for convienence
>    io-wq: add infra data structure for fixed workers
>    io-wq: tweak io_get_acct()
>    io-wq: fixed worker initialization
>    io-wq: fixed worker exit
>    io-wq: implement fixed worker logic
>    io-wq: batch the handling of fixed worker private works
>    io_uring: add register fixed worker interface
>    io-wq: add an work list for fixed worker
>    io_uring: cancel works in exec work list for fixed worker
> 
>   include/uapi/linux/io_uring.h |  11 +
>   io_uring/io-wq.c              | 495 ++++++++++++++++++++++++++++++----
>   io_uring/io-wq.h              |   8 +
>   io_uring/io_uring.c           |  71 +++++
>   4 files changed, 537 insertions(+), 48 deletions(-)
> 
> 
> base-commit: 094abe8fbccb0d79bef982c67eb7372e92452c0e

ping...

      parent reply	other threads:[~2022-07-12  8:33 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-27 13:35 [PATCH v5 00/11] fixed worker Hao Xu
2022-06-27 13:35 ` [PATCH 01/11] io-wq: add a worker flag for individual exit Hao Xu
2022-06-27 13:35 ` [PATCH 02/11] io-wq: change argument of create_io_worker() for convienence Hao Xu
2022-06-27 13:35 ` [PATCH 03/11] io-wq: add infra data structure for fixed workers Hao Xu
2022-06-27 13:35 ` [PATCH 04/11] io-wq: tweak io_get_acct() Hao Xu
2022-06-27 13:35 ` [PATCH 05/11] io-wq: fixed worker initialization Hao Xu
2022-06-27 13:35 ` [PATCH 06/11] io-wq: fixed worker exit Hao Xu
2022-06-27 13:35 ` [PATCH 07/11] io-wq: implement fixed worker logic Hao Xu
2022-06-27 13:35 ` [PATCH 08/11] io-wq: batch the handling of fixed worker private works Hao Xu
2022-06-27 13:35 ` [PATCH 09/11] io_uring: add register fixed worker interface Hao Xu
2022-06-27 13:35 ` [PATCH 10/11] io-wq: add an work list for fixed worker Hao Xu
2022-06-27 13:35 ` [PATCH 11/11] io_uring: cancel works in exec " Hao Xu
2022-07-12  8:32 ` Hao Xu [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7d5d120d-941d-0451-b1f3-ed67baa8ecbe@linux.dev \
    --to=hao.xu@linux.dev \
    --cc=asml.silence@gmail.com \
    --cc=axboe@kernel.dk \
    --cc=io-uring@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.