mbox series

[v2,0/2] target: Remove atomics from main IO path

Message ID 20250424032741.16216-1-michael.christie@oracle.com
Headers show
Series target: Remove atomics from main IO path | expand

Message

Mike Christie April 24, 2025, 3:26 a.m. UTC
The following patches made over Linus's tree remove the atomic use from
the main IO path. There was a handful of atomic_longs used just used
for stats and a couple atomics used for handling ordered commands. These
patches move the stats to per cpu, and moves the ordered tracking to a
per cpu counter.

With the patches 8K IOPS increases by up to 33% when running fio
with numjobs >= 4 and using the vhost-scsi target with virtio-scsi
and virtio num_queues >= 4 (jobs and queues match, and virtqueue_size
and cmd_per_lun are increased to match the total iodepth of all
jobs).

v2:
- Fix variable initialization used to add per cpu values.