All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Martin K. Petersen" <martin.petersen@oracle.com>
To: Chris Worley <worleys@gmail.com>
Cc: "Martin K. Petersen" <martin.petersen@oracle.com>,
	"Majed B." <majedb@gmail.com>,
	Linux RAID <linux-raid@vger.kernel.org>
Subject: Re: Intel Updates SSDs, Supports TRIM, Faster Writes
Date: Tue, 10 Nov 2009 17:35:12 -0500	[thread overview]
Message-ID: <yq1skcmm2jj.fsf@sermon.lab.mkp.net> (raw)
In-Reply-To: <f3177b9e0911101245o66702d06ja9bbe520f010553e@mail.gmail.com> (Chris Worley's message of "Tue, 10 Nov 2009 13:45:52 -0700")

>>>>> "Chris" == Chris Worley <worleys@gmail.com> writes:

Chris> I'm not saying the SCSI protocol is bad, I'm saying the
Chris> SAS/SATA/SCSI controllers, that have been optimized for years for
Chris> rotating media, don't have the compute power to handle the sort
Chris> of performance attainable with SSS.

And I'm saying that at least in the SCSI case that's untrue.  SAS and FC
controllers are optimized for lots and lots of I/O because their main
application is driving large storage arrays which have performance
comparable to the solid state devices you mention.

In fact, many deployments use said SCSI controllers to drive RAM-based
solid state storage devices which are faster than the flash-based
devices we're talking about here.


Chris> Unless you try to coalesce it for a later time, which is what I
Chris> hear is being done to compensate for slow controllers.

We don't coalesce.


Chris> True.  They limit the NAND performance based on the lack of
Chris> performance of their ASIC and the controller.  

Interesting theory.

I'm personally of the conviction that cheap SSDs suffer from amazingly
poor FTL design rather than inherent hardware limitations.

That's something intel got right with their drives.  The hardware itself
is pretty unremarkable.


Chris> That doesn't mean you can't get a lot better performance out of
Chris> NAND, it just means they limited themselves to be compatible, and
Chris> the kernel will implement a strategy that will optimize for the
Chris> poor design.

You are confusing limitations in interconnect technology with the
properties of the protocols used.  There is no point in adding channels
behind the ASIC to drive 12 Gbps of I/O if your host interface is 1.5
Gbps SATA.  That has nothing to do with whether ATA and SCSI are
suitable protocols.

I'm arguing that the at least SCSI is a good protocol for sending
commands to a block device.  Nothing prevents your flash-based block
device from presenting a PCIe SCSI interface to the host and then do
something completely different in the back.

There's lots of warts in SCSI.  And I personally think that ATA TRIM was
very poorly defined.  But I don't believe that these protocols are
inherently bad for driving storage.  And I don't believe that coming up
with a custom "block" interface will improve anything in the short term.
Heck, the overhead of speaking SCSI is so low that even the thumb drive
you brought up implements it.  At negligible cost.


Chris> but you also believe the best way to do SSS was behind compatible
Chris> legacy SAS/SATA devices optimized for old rotating media?

You're the one claiming these "legacy" devices are optimized for
rotating media.  I'm claiming there's nothing rotating about either
protocol.

Both express "do something to this range of blocks" in 16 bytes or less
+ a scatterlist describing memory.  That's a pretty efficient interface
in my book.


Chris> I'd run IOZone and fill the drive (as I recall ~200GB) w/ files
Chris> and benchmark, which, at the end, IOZone would delete all the
Chris> files created (in the hundreds), and the delete/discard process
Chris> was no more time consuming than just the delete process (for
Chris> everything on the drive).  This was w/ the original 2.6.27 and
Chris> 2.6.28 ext4 "discard" implementations.

And which device was this?  How did it implement discard?

-- 
Martin K. Petersen	Oracle Linux Engineering

  reply	other threads:[~2009-11-10 22:35 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-11-08 17:57 Intel Updates SSDs, Supports TRIM, Faster Writes Bill Davidsen
2009-11-08 22:30 ` Thomas Fjellstrom
2009-11-09  1:13 ` Majed B.
2009-11-09 16:37   ` Chris Worley
2009-11-09 16:42     ` Majed B.
2009-11-09 16:59       ` Chris Worley
2009-11-10  9:42         ` Kasper Sandberg
2009-11-10 15:39           ` Chris Worley
2009-11-10 15:43             ` Majed B.
2009-11-10 15:58               ` Chris Worley
2009-11-10 16:01                 ` Majed B.
2009-11-10 16:15                   ` Robin Hill
2009-11-10 16:31                     ` Chris Worley
2009-11-10 16:18                   ` Chris Worley
2009-11-10 18:31                     ` Majed B.
2009-11-10 23:03                       ` Mathieu Chouquet-Stringer
2009-11-11  2:52                         ` Majed B.
2009-11-10 18:40                     ` Kasper Sandberg
2009-11-10 15:48             ` Asdo
2009-11-10 16:04               ` Chris Worley
2009-11-11 18:02                 ` Default User
2009-11-10 18:38             ` Kasper Sandberg
2009-11-10 16:36         ` Martin K. Petersen
2009-11-10 17:22           ` Chris Worley
2009-11-10 20:11             ` Martin K. Petersen
2009-11-10 20:45               ` Chris Worley
2009-11-10 22:35                 ` Martin K. Petersen [this message]
2009-11-11 18:17                   ` Chris Worley
2009-11-10 21:01               ` Greg Freemyer
2009-11-10 21:17                 ` Chris Worley
2009-11-10 22:56                 ` Martin K. Petersen
2009-11-11 17:00                   ` Greg Freemyer
2009-11-12  5:50                     ` Martin K. Petersen
2009-11-09 18:42   ` Greg Freemyer

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=yq1skcmm2jj.fsf@sermon.lab.mkp.net \
    --to=martin.petersen@oracle.com \
    --cc=linux-raid@vger.kernel.org \
    --cc=majedb@gmail.com \
    --cc=worleys@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 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.