public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
From: Douglas Gilbert <dgilbert@interlog.com>
To: Sergey Meirovich <rathamahata@gmail.com>,
	James Smart <james.smart@emulex.com>
Cc: Jan Kara <jack@suse.cz>, linux-scsi <linux-scsi@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Gluk <git.user@gmail.com>
Subject: Re: Terrible performance of sequential O_DIRECT 4k writes in SAN environment. ~3 times slower then Solars 10 with the same HBA/Storage.
Date: Thu, 09 Jan 2014 14:54:10 -0500	[thread overview]
Message-ID: <52CEFE62.7070009@interlog.com> (raw)
In-Reply-To: <CA+QCeVSruYZCQOGapU_y613ucaptkzQN34X83DmYiPXTkWFVzg@mail.gmail.com>

On 14-01-08 08:57 AM, Sergey Meirovich wrote:
> Hi James,
>
> On 7 January 2014 22:57, James Smart <james.smart@emulex.com> wrote:
>> Sergey,
>>
>> The Thor chipset is a bit old - a 4Gig adapter.  Most of our performance
>> improvements, including parallelization, have gone into the 8G and 16G
>> adapters. But you still should have seen significantly beyond what you
>> reported.
>
> First of all - thanks a lot!
>
> I took Thor because we have exactly the same Thors in some of our
> Solaris servers. I've also tried 6 different qlogics (mostly 8G) and
> fnic (10G) as well. Surprisingly enough Thor was the fastest one for
> seqwr 4k. Though in most of the cases machines were from our different
> DCs and hence each one connected to yet another storage.
>
>>
>> We did a sanity check some hardware we already had set up with a Thor
>> adapter.  We saw 23555 iop/s and 92.1 MB/s without needing to do much, well
>> beyond what you've reported, and still not up to what we know the card can
>> do.  There are some inefficiencies from the linux kernel and some locking
>> deltas between our solaris and linux drivers - but not enough to account for
>> what you are seeing.
>>
>> I expect the Direct IO filesystem behavior is the root issue.
>
> The strangest thing to me that this is the problem with sequential
> write. For example the fnic one machine is zoned to EMC XtremIO and
> had results: 14.43Mb/sec 3693.65 Requests/sec for sequential 4k. The
> same fnic machine perfrormed rather impressive for random 4k
> 451.11Mb/sec 115485.02 Requests/sec

You could bypass O_DIRECT and use ddpt together with
a bsg pass-through (bsg is a little faster than sg
for these purposes).

For example:

# lsscsi -g
[0:0:0:0]    disk    ATA    INTEL SSDSC2CW12 400i  /dev/sda /dev/sg0
[14:0:0:0]   disk    Linux  scsi_debug       0004  -        /dev/sg1

# ddpt if=/dev/bsg/14:0:0:0 bs=512 bpt=128 count=1m
Output file not specified so no copy, just reading input
1048576+0 records in
0+0 records out
time to read data: 0.283566 secs at 1893.28 MB/sec

bs= should match the block size of the storage device and
the size of each SCSI READ is dictated by bpt= (so 64 KB
in this case).

Such a test should show you if your performance problem
is in the block layer or below, or above the block layer
(at least the point where pass-through commands are
injected).

Doug Gilbert

  reply	other threads:[~2014-01-09 19:54 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-06  9:38 Terrible performance of sequential O_DIRECT 4k writes in SAN environment. ~3 times slower then Solars 10 with the same HBA/Storage Sergey Meirovich
2014-01-06 20:10 ` Jan Kara
2014-01-07  9:13   ` Sergey Meirovich
2014-01-07 15:58   ` Christoph Hellwig
2014-01-07 18:37     ` Sergey Meirovich
2014-01-08 14:03       ` Christoph Hellwig
2014-01-08 14:43         ` Sergey Meirovich
2014-01-08 15:26           ` Christoph Hellwig
2014-01-08 17:30             ` Sergey Meirovich
2014-01-08 20:55               ` Jan Kara
2014-01-09 10:11                 ` Sergey Meirovich
2014-01-10  9:36                   ` Jan Kara
2014-01-10 10:36                     ` Sergey Meirovich
2014-01-10 10:48                       ` Jan Kara
2014-01-10 14:32                         ` Sergey Meirovich
2014-01-10 18:14                           ` Sergey Meirovich
2014-01-14 13:30         ` Sergey Meirovich
2014-01-15 22:07           ` Dave Chinner
2014-01-20 13:58             ` Christoph Hellwig
2014-01-20 22:18               ` Dave Chinner
2014-01-08  1:17     ` Jan Kara
2014-01-08 14:03       ` Christoph Hellwig
2014-01-07 20:57   ` James Smart
2014-01-08 13:57     ` Sergey Meirovich
2014-01-09 19:54       ` Douglas Gilbert [this message]
2014-01-09 21:26         ` Sergey Meirovich
2014-01-09 21:43           ` Sergey Meirovich
  -- strict thread matches above, loose matches on Subject: below --
2014-01-06 13:16 Sergey Meirovich

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=52CEFE62.7070009@interlog.com \
    --to=dgilbert@interlog.com \
    --cc=git.user@gmail.com \
    --cc=jack@suse.cz \
    --cc=james.smart@emulex.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=rathamahata@gmail.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