All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] target: fixes and perf improvements
@ 2021-09-30  2:04 Mike Christie
  2021-09-30  2:04 ` [PATCH 1/5] target: fix ordered CMD_T_SENT handling Mike Christie
                   ` (6 more replies)
  0 siblings, 7 replies; 9+ messages in thread
From: Mike Christie @ 2021-09-30  2:04 UTC (permalink / raw)
  To: martin.petersen, james.bottomley, linux-scsi, target-devel

The following patches apply to Martin's staging tree or Linus's tree.
The patches main goal is to take the locks out of the main IO path but
for the case of ordered cmds they also fix a handfull of bugs.

For the locks we currently have:

1. lun_tg_pt_gp_lock
2. delayed_cmd_lock
3. dev_reservation_lock

and this set takes out 1 and 2. With them removed a simple fio:

fio --filename=/dev/sdb  --direct=1 --rw=randrw --bs=4k \
--ioengine=libaio --iodepth=64  --numjobs=$NUM_QUEUES

can increase IOPs by up to 30% (from a max of 1.4M to 2M) when using
multiple queues and vhost-scsi with the multiple vhost thread patches or
tcm loop with nr_hw_queues set.

Note: I normally hit a ceiling of 1.4M IOPs with around 8 queues but with
the patches I hit a ceiling at around 16 queues and 2M IOPs.

If I cheat and set emulate_pr=0 so the reservation lock is removed then
it scales nicely and you can continue to add a job and queue per CPU (at
least up to 20 CPUs which is when I run out of CPUs).



^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2021-10-21  3:43 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-30  2:04 [PATCH 0/5] target: fixes and perf improvements Mike Christie
2021-09-30  2:04 ` [PATCH 1/5] target: fix ordered CMD_T_SENT handling Mike Christie
2021-10-05 18:02   ` Lee Duncan
2021-09-30  2:04 ` [PATCH 2/5] target: fix ordered tag handling Mike Christie
2021-09-30  2:04 ` [PATCH 3/5] target: fix alua_tg_pt_gps_count tracking Mike Christie
2021-09-30  2:04 ` [PATCH 4/5] target: replace lun_tg_pt_gp_lock with rcu in IO path Mike Christie
2021-09-30  2:04 ` [PATCH 5/5] target: perform alua group changes in one step Mike Christie
2021-10-17  3:08 ` [PATCH 0/5] target: fixes and perf improvements Martin K. Petersen
2021-10-21  3:42 ` Martin K. Petersen

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.