• Keith Busch's avatar
    NVMe: per-cpu io queues · 42f61420
    Keith Busch authored
    The device's IO queues are associated with CPUs, so we can use a per-cpu
    variable to map the a qid to a cpu. This provides a convienient way
    to optimally assign queues to multiple cpus when the device supports
    fewer queues than the host has cpus. The previous implementation may
    have assigned these poorly in these situations. This patch addresses
    this by sharing queues among cpus that are "close" together and should
    have a lower lock contention penalty.
    Signed-off-by: default avatarKeith Busch <keith.busch@intel.com>
    Signed-off-by: default avatarMatthew Wilcox <matthew.r.wilcox@intel.com>
    42f61420
nvme-core.c 68.8 KB