linux-block.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Damien Le Moal <Damien.LeMoal@wdc.com>
To: Phillip Susi <phill@thesusis.net>, Tim Walker <tim.t.walker@seagate.com>
Cc: Jens Axboe <axboe@kernel.dk>,
	"linux-block@vger.kernel.org" <linux-block@vger.kernel.org>,
	"Martin K . Petersen" <martin.petersen@oracle.com>,
	"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>
Subject: Re: [PATCH v6 0/5] Initial support for multi-actuator HDDs
Date: Sun, 29 Aug 2021 22:50:49 +0000	[thread overview]
Message-ID: <DM6PR04MB708184344F53156F284DEE8AE7CA9@DM6PR04MB7081.namprd04.prod.outlook.com> (raw)
In-Reply-To: 87ilzqu6to.fsf@vps.thesusis.net

On 2021/08/28 2:38, Phillip Susi wrote:
> 
> Tim Walker <tim.t.walker@seagate.com> writes:
> 
>> The IO Scheduler is a useful place to implement per-actuator load
>> management, but with the LBA-to-actuator mapping available to user
>> space (via sysfs) it could also be done at the user level. Or pretty
>> much anywhere else where we have knowledge and control of the various
>> streams.
> 
> I suppose there may be some things user space could do with the
> information, but mainly doesn't it have to be done in the IO scheduler?

Correct, if the user does not use a file system then optimizations will depend
on the user application and the IO scheduler.

> As it stands now, it is going to try to avoid seeking between the two
> regions even though the drive can service a contiguous stream from both
> just fine, right?

Correct. But any IO scheduler optimization will kick-in only and only if the
user is accessing the drive at a queue depth beyond the drive max QD, 32 for
SATA. If the drive is exercised at a QD less than its maximum, the scheduler
does not hold on to requests (at least mq-deadline does not, not sure about
bfq). So even with only this patch set (no optimizations at the kernel level),
the user can still make things work as expected, that is, get multiple streams
of IOs to execute in parallel.


-- 
Damien Le Moal
Western Digital Research

      reply	other threads:[~2021-08-29 22:50 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-27  7:50 [PATCH v6 0/5] Initial support for multi-actuator HDDs Damien Le Moal
2021-08-27  7:50 ` [PATCH v6 1/5] block: Add independent access ranges support Damien Le Moal
2021-08-27  7:50 ` [PATCH v6 2/5] scsi: sd: add concurrent positioning " Damien Le Moal
2021-08-27  7:50 ` [PATCH v6 3/5] libata: support concurrent positioning ranges log Damien Le Moal
2021-08-27  7:50 ` [PATCH v6 4/5] doc: document sysfs queue/independent_access_ranges attributes Damien Le Moal
2021-08-27  7:50 ` [PATCH v6 5/5] doc: Fix typo in request queue sysfs documentation Damien Le Moal
2021-08-27 13:58 ` [PATCH v6 0/5] Initial support for multi-actuator HDDs Phillip Susi
2021-08-27 14:28   ` Tim Walker
2021-08-27 16:41     ` Christoph Hellwig
2021-08-27 17:00       ` Tim Walker
2021-08-29 22:55       ` Damien Le Moal
2021-08-27 17:34     ` Phillip Susi
2021-08-29 22:50       ` Damien Le Moal [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=DM6PR04MB708184344F53156F284DEE8AE7CA9@DM6PR04MB7081.namprd04.prod.outlook.com \
    --to=damien.lemoal@wdc.com \
    --cc=axboe@kernel.dk \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=phill@thesusis.net \
    --cc=tim.t.walker@seagate.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).