Project

General

Profile

Bug #11847

The nvme cmd completion queue is contentious

Added by Paul Winder about 1 year ago. Updated about 1 year ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
driver - device drivers
Start date:
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:

Description

When benchmarking for https://www.illumos.org/issues/11827 I discovered the mutex inside the taskq code which guards queue and un-queueing of of tasks is hot and heavily contended.

I propose there is one taskq per completion queue.

The testing results will be posted in 11827


Related issues

Related to illumos gate - Feature #11827: Increase concurrency through blkdevClosedPaul Winder

Actions
Precedes illumos gate - Bug #11964: nvme namespace attach and detach ioctls are not safe with concurrent accessNewPaul Winder

Actions
#1

Updated by Paul Winder about 1 year ago

  • Related to Feature #11827: Increase concurrency through blkdev added
#2

Updated by Paul Winder about 1 year ago

  • Precedes Bug #11964: nvme namespace attach and detach ioctls are not safe with concurrent access added
#3

Updated by Electric Monk about 1 year ago

  • Status changed from In Progress to Closed
  • % Done changed from 70 to 100

git commit 4d95620bc3105916e69c40cff8e2e3d55bd6c4ae

commit  4d95620bc3105916e69c40cff8e2e3d55bd6c4ae
Author: Paul Winder <paul@winders.demon.co.uk>
Date:   2019-11-21T16:46:27.000Z

    11827 Increase concurrency through blkdev
    11847 The nvme cmd completion queue is contentious
    Reviewed by: Robert Mustacchi <rm@fingolfin.org>
    Reviewed by: Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
    Reviewed by: Matthias Scheler <matthias.scheler@wdc.com>
    Approved by: Dan McDonald <danmcd@joyent.com>

Also available in: Atom PDF