linux-ext4.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* -E stride and stripe-width necessary for best performace of SSDs?
@ 2011-07-01  9:30 Werner Fischer
  2011-07-01 16:03 ` Greg Freemyer
  0 siblings, 1 reply; 3+ messages in thread
From: Werner Fischer @ 2011-07-01  9:30 UTC (permalink / raw)
  To: linux-ext4

Hi,

* I want to optimize ext4 on my SSD (Intel 320 Series 160 GB).
* There are some sites recommending the use of the -E stride and -E 
  stripe-width paramaters, like
  http://searchenterpriselinux.techtarget.com/tip/Optimizing-Linux-for-SSD-usage
* I know these parameters are useful for RAIDs, but I don't think that 
  they have any advantages for SSDs.

Can anybody with deeper ext4 knowledge confirm if I'm right?

Best regards,
Werner


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

* Re: -E stride and stripe-width necessary for best performace of SSDs?
  2011-07-01  9:30 -E stride and stripe-width necessary for best performace of SSDs? Werner Fischer
@ 2011-07-01 16:03 ` Greg Freemyer
  2011-07-01 17:40   ` Werner Fischer
  0 siblings, 1 reply; 3+ messages in thread
From: Greg Freemyer @ 2011-07-01 16:03 UTC (permalink / raw)
  To: Werner Fischer; +Cc: linux-ext4

apologies for the re-send - first one bounced

On Fri, Jul 1, 2011 at 5:30 AM, Werner Fischer <devlists@wefi.net> wrote:
>
> Hi,
>
> * I want to optimize ext4 on my SSD (Intel 320 Series 160 GB).
> * There are some sites recommending the use of the -E stride and -E
>  stripe-width paramaters, like
>  http://searchenterpriselinux.techtarget.com/tip/Optimizing-Linux-for-SSD-usage
> * I know these parameters are useful for RAIDs, but I don't think that
>  they have any advantages for SSDs.
>
> Can anybody with deeper ext4 knowledge confirm if I'm right?
>
> Best regards,
> Werner

Werner,

That article is highly simplistic, and I dare say inaccurate due to
the simplifications.

For most of us SSDs are magic boxes we push data into and pull data out of.

We know the data gets stored on NAND chips and that many (most?) NAND
chips have 128KB Erase Blocks.

But we have no knowledge of how the data itself is organized.
Assuming that a Erase Block contains contiguous sectors is wrong in
most cases. There is sophisticated logic going on that is re-mapping
the data.  Those algorithms are NOT public. We definitely don't know
enough to know what stride etc. is optimal.

I personally think using 1MB for partition boundaries and a stride
which is a multiple of 4KB is probably best, but there really is no
good way to know other than performance testing the specific make /
model / firmware release you are working with.

Here's two wiki pages I wrote that may give you some background:

http://en.opensuse.org/SDB:SSD_Idle_Time_Garbage_Collection_support

http://en.opensuse.org/SDB:SSD_discard_%28trim%29_support

You might want to read them both, then read them both again because
the topics depend on each other.

And I just noticed this one:
http://en.opensuse.org/SDB:SSD_performance

I have no idea how accurate the last article is.  (I have not read/reviewed it.)

Greg
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: -E stride and stripe-width necessary for best performace of SSDs?
  2011-07-01 16:03 ` Greg Freemyer
@ 2011-07-01 17:40   ` Werner Fischer
  0 siblings, 0 replies; 3+ messages in thread
From: Werner Fischer @ 2011-07-01 17:40 UTC (permalink / raw)
  To: Greg Freemyer; +Cc: linux-ext4

Hi Greg,

thanks for your feedback,
On Fri, 2011-07-01 at 12:03 -0400, Greg Freemyer wrote:
> On Fri, Jul 1, 2011 at 5:30 AM, Werner Fischer <devlists@wefi.net> wrote:
> > * I want to optimize ext4 on my SSD (Intel 320 Series 160 GB).
> > * There are some sites recommending the use of the -E stride and -E
> >  stripe-width paramaters, like
> >  http://searchenterpriselinux.techtarget.com/tip/Optimizing-Linux-for-SSD-usage
> > * I know these parameters are useful for RAIDs, but I don't think that
> >  they have any advantages for SSDs.
> >
> > Can anybody with deeper ext4 knowledge confirm if I'm right?
> That article is highly simplistic, and I dare say inaccurate due to
> the simplifications.
> 
> For most of us SSDs are magic boxes we push data into and pull data out of.
> 
> We know the data gets stored on NAND chips and that many (most?) NAND
> chips have 128KB Erase Blocks.
Meanwhile Block sizes have increased up to 2 MiB: 256 pages á 8 KiB for
current 25nm NAND from Intel/Micron (which is used also in my SSD)
http://www.anandtech.com/show/2928

> But we have no knowledge of how the data itself is organized.
> Assuming that a Erase Block contains contiguous sectors is wrong in
> most cases.
I agree, AFAIK this was only true for the very first SSDs on the market.

> There is sophisticated logic going on that is re-mapping
> the data.  Those algorithms are NOT public. We definitely don't know
> enough to know what stride etc. is optimal.
>
> I personally think using 1MB for partition boundaries 
I agree

> and a stride
> which is a multiple of 4KB is probably best, but there really is no
> good way to know other than performance testing the specific make /
> model / firmware release you are working with.
For the 25nm NAND from Intel/Micron we know its page size = 8 KiB. 
For an Ext4 file system with block size 4 KiB (4096 Byte) I could
imagine that using
  stride=2        (2 file system blocks = 8 KiB) and
  stripe-width=2  (also 2 file system blocks = 8 KiB)
would make sense? (just taking the page size into account)

> Here's two wiki pages I wrote that may give you some background:
> http://en.opensuse.org/SDB:SSD_Idle_Time_Garbage_Collection_support
> http://en.opensuse.org/SDB:SSD_discard_%28trim%29_support
> You might want to read them both, then read them both again because
> the topics depend on each other.
Thank a lot, I already came across them - they've been valuable to me!

Werner
> And I just noticed this one:
> http://en.opensuse.org/SDB:SSD_performance
> I have no idea how accurate the last article is.  (I have not read/reviewed it.)
> 
> Greg


--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

end of thread, other threads:[~2011-07-01 17:40 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-07-01  9:30 -E stride and stripe-width necessary for best performace of SSDs? Werner Fischer
2011-07-01 16:03 ` Greg Freemyer
2011-07-01 17:40   ` Werner Fischer

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).