Sign in with
Sign up | Sign in
Your question
Solved

SSD iops "aligned"?

Last response: in Storage
Share
April 4, 2011 6:47:10 PM


When looking at the performance charts for SSD disks there often is something like this:

"Random Write 4K: 15,000 IOPS / 50,000 IOPS (Aligned)"

What will aligned mean in this context?

More about : ssd iops aligned

Best solution

a c 415 G Storage
April 4, 2011 7:06:04 PM

"4K" random I/O tests read and write 4K bytes at a time - that's equivalent to eight standard-sized disk sectors of 512 bytes each. An "aligned" read or write is one that starts on a sector number that's evenly divisible by 8 (the size of the read or write). For example, aligned operations might start at sector 0, 8, 16, 24, etc. Unaligned operations would be ones that start at any other sector number.

On a standard disk drive with 512-byte sectors the aligned and unaligned performance should be pretty much the same. On an "Advanced Format" disk drive with 4K-byte sectors there will be a significant performance difference since each I/O operation will have to read or write two physical sectors.

On an SSD the internal storage is arranged as a series of "pages" which are typically 128- or 256-KBytes in size. Unaligned writes may perform somewhat worse because a portion of them will require access to two different pages in the device.
Share
April 4, 2011 7:12:21 PM

sminlal said:

On an SSD the internal storage is arranged as a series of "pages" which are typically 128- or 256-KBytes in size. Unaligned writes may perform somewhat worse because a portion of them will require access to two different pages in the device.


Thanks for your reply!

Does a SSD disk use 512 bytes sectors that is presented the the operating system? Is the large pages an internal structure known only to the SSD itself?

And so is the aligned IO a request that is guaranteed to fit into one of these pages?
m
0
l
Related resources
a c 415 G Storage
April 4, 2011 11:00:26 PM

Yes, SSDs look to the OS like a disk drive with 512-byte sectors. The internal organization of the flash pages is entirely hidden from the outside world.

A 4K-byte I/O request that's aligned on a 4K-byte sector boundary (multiple of 8 sectors) is guaranteed to fit within a single flash "page" as long as the "page" size is at least 4K bytes (which is universally true for SSDs, I believe).

But a 1M-byte I/O request that's aligned on a 4K-byte sector boundary can still span multiple flash pages. So it depends on the I/O size.
m
0
l
April 5, 2011 9:26:51 AM

sminlal said:
Yes, SSDs look to the OS like a disk drive with 512-byte sectors. The internal organization of the flash pages is entirely hidden from the outside world.

A 4K-byte I/O request that's aligned on a 4K-byte sector boundary (multiple of 8 sectors) is guaranteed to fit within a single flash "page" as long as the "page" size is at least 4K bytes (which is universally true for SSDs, I believe).


Thanks for your reply and very interesting. Does the OS have the possibility to "align" its partition to this SSD page structure? There is a similar problem on SAN, where for example Windows 2003 Server place its partition unaligned to the stripe size of the LUN on the SAN, making more IOs. Partition should be created with diskpart and certain parameters to fix this.

Is there any need to do any special configuration for a SSD unit on Windows 7?
m
0
l
a c 415 G Storage
April 5, 2011 6:10:54 PM

The Windows XP "Disk Management" program that's used to partition a disk creates its first partition starting at sector 63 on the drive, which is unaligned. This can cause performance issues for SSDs and especially for the new "advanced format" hard drives that use 4K-byte sector sizes.

The Vista and Windows 7 programs create partitions starting at sector 64, so they work well with SSDs and "advanced format" hard drives.

Note that Windows XP will work perfectly well with disks and SSDs that have been partitioned on other systems so that the first partition starts at sector 64. With drives partitioned that way you'll get the same performance using Windows XP that you would with Vista and Windows 7. The only catch is that you can't create the partitions using Windows XP.
m
0
l
April 5, 2011 7:33:48 PM


Great! Thanks for your answers.

sminlal said:
The only catch is that you can't create the partitions using Windows XP.


I would actually assume it will be possible even on XP if creating the partition with diskpart and the align=64 option, as you can with Windows 2003 which is the same generation.
m
0
l
April 5, 2011 7:34:04 PM

Best answer selected by ricno.
m
0
l
!