We had a chance to talk to Western Digital last week about a new hard drive technology they have coming down the pipe called Advanced Format. Ahead of the impending launch of the first Advanced Format drives, Western Digital is engaging in an education campaign about the technology, as it represents the first step in a general transition for hard drives, and is a transition that can’t be done completely behind the scenes. Specifically, Advanced Format is going to bring about some issues where older operating systems (and we’re looking almost exclusively at Windows XP here) will inadvertently harm drive performance by making certain assumptions about the drives that will no longer be true.

We’ll get in to the nitty-gritty about the impact of this in a bit, but first let’s start with Advanced Format. What is it? In a nutshell, it’s replacing the traditional 512 byte hard drive sector with a 4 kilobyte (4,096B) hard drive sector for a number of practical and technological reasons. Advanced Format is the name Western Digital is giving to drives implementing 4KB sectors.

The move to 4K-sectors has been some 10 years in the making, as research in the late 90’s identified that 512B sectors made less and less sense as drives continued to get larger. At a time when hard drives were measured in megabytes, 512B sectors were a good balance between technical factors and a desire to keep wasted space at a minimum (you can’t normally put 2 files in 1 sector), but times have changed and hard drive capacities are several orders of magnitude larger.

The crux of the problem is that there are 3 factors that are in constant need of balancing when it comes to hard drive design: areal density, the signal-to-noise ratio (SNR) in reading from drive platters, and the use of Error Correcting Code (ECC) to find and correct any errors that occur. As areal density is increases, sectors become smaller and their SNR decreases. To compensate for that, improvements are made to ECC (usually through the use of more bits) in order to maintain reliability. So for a drive maker to add more space, they ultimately need to improve their error-correction capabilities, which means the necessary ECC data requires more space. Rinse, wash, repeat.


The SNR for various areal densities

At some point during this process drive manufacturers stop gaining any usable space - that is, they have to add as much ECC data as they get out of the increase areal density in the first place - which limits their ability to develop larger drives. Drive manufacturers dislike this both because it hinders their ability to develop new drives, and because it means their overall format efficiency (the amount of space on a platter actually used to store user data) drops. Drive manufacturers want to build bigger drives, and they want to spend as little space on overhead as possible.

But all is not lost. The principle problem here is that ECC correction takes place in 512B chunks, while ECC can be more efficient when used over larger chunks of data. If ECC data is calculated against a larger sector, even though more ECC data is necessary than for a single 512B sector, less ECC data than the sum of multiple sectors is needed to maintain the same level of operational reliability. One estimate for 4K sector technology puts this at 100 bytes of ECC data needed for a 4K sector, versus 320 (40x8) for 8 512B sectors.  Furthermore the larger sectors means that larger erroneous chunks of data can be corrected (burst error correction), something that was becoming harder as greater areal densities made it easier to wipe out larger parts of a 512B sector. As a result, the need for the larger sector is born.

As for why Western Digital and other drive makers are transitioning specifically to a 4K sector, the rationale is based on the earlier problems. 4K sectors are much larger than 512B sectors, which means they benefit more from our earlier ECC optimizations, which in turn brings a greater increase in format efficiency than using smaller sectors (i.e. 1K).

4K also happens to be a magical number elsewhere when it comes to computers – this is primarily rooted in the fact that a normal page of memory on an x86 processor continues to be 4KB (ed: 4MB pages also exist). The x86 page size in turn has also lead to file system clusters (the smallest unit of storage in a file system) becoming 4KB as 4KB clusters neatly fit in to a page of memory, while the need for smaller clusters has subsided amidst a general increase in file size (i.e. fewer files are smaller than 4KB and waste space). NTFS, EXT3, and HFS+ all default to 4KB clusters on modern hard drives. So 4KB physical sectors map perfectly with 4KB file system clusters, which in turn map perfectly with 4KB memory pages. And hence 4KB is the largest practical size for a hard drive sector at this time.

  Old Sector New Sector x86 Mem Page NTFS Cluster HFS+ Cluster
Size 512B 4K 4K 4K 4K

So what’s the net benefit from all of this for consumers? At the moment, not a lot, which is why this is a low-key launch for Western Digital, and the focus of this is an education effort on what the use of 4K sectors means for older operating systems. The biggest benefit is going to be that this will enable Western Digital to more easily design drives over 2TB in size.

From a numbers perspective, Western Digital estimates that the use of 4K sectors will give them an immediate 7%-11% increase in format efficiency. ECC burst error correction stands to improve by 50%, and the overall error rate capability improves by 2 orders of magnitude. In theory these reliability benefits should immediately apply to all 4K sector drives (making the Advanced Format drives more reliable than regular drives), but Western Digital is not pushing that idea at this time.


IDEMA projected format efficiency and ECC burst sizes

With all of that said, to make this kind of advancement practical, a transition period is necessary. That transition period will be done through the use of 512B emulation technology, which will expose Advanced Format drives to the drive controller and operating system as having 512B sectors, when in reality they will have 4K sectors. Unfortunately, this method has a downside, which is the ultimate reason for Western Digital’s education campaign.


512 byte sector emulation: how the drive is laid out (physical) and what the OS sees (logical)

With the emulation of 512B sectors, there’s the risk that a partition could be misaligned compared to the 4K physical sectors - where it would be unwittingly started in the middle of such a sector. As a result, the clusters of a file system on that partition would end up straddling 4K sectors, which would cause performance problems. Specifically, in testing IDEMA (the drive manufacturers’ trade group) found that random writes in would be particularly impacted, as a Read-Modify-Write(RMW) would need to take place to update each sector, rather than a straight write(ed: This is very similar to writing to a dirty block on a SSD). Although this isn’t mechanically/electronically  harmful in any way, the performance hit compared to a straight write makes it undesirable.


A single unaligned 4K cluster straddling 2 physical sectors


A misaligned partition under WinXP. Only LBAs divisible by 8 are aligned

What Operating Systems Are Affected
POST A COMMENT

87 Comments

View All Comments

  • ChuckR - Friday, December 18, 2009 - link

    If 4k will not be the standard till 2014(estimate), When will Sata 6.0 be implemented to improve the speed of Read-Modify-Write conditions.
    I read the Seagate Barracuda runs Sata 6.0, BUT only for outer sectors.
    Any word on a total solution for HD's?
    Reply
  • pbhj - Friday, December 18, 2009 - link

    hdparm tells me "Logical/Physical Sector size: 512 bytes" but this article tells me:

    Unfortunately, at this point the utility also serves as the only way to identify an Advance Format drive without physically looking at it. Looking at the ATA spec, it looks like there’s a provision for asking a drive its native sector size (regardless of 512B emulation) but at this point there’s no such tool beyond the WD Align utility itself.

    So did hdparm just guess ....
    Reply
  • GourdFreeMan - Friday, December 18, 2009 - link

    No, hdparm just passes along what the drive's controller reports to the kernel. The controller pretends the drive has a 512 byte sector size, even through physically this is not what happens when a write is done by the controller. The same thing already happens with SSDs -- on my Gentoo home server my SSD happily reports:
    Logical Sector size: 512 bytes
    Physical Sector size: 512 bytes
    despite pages being far larger than that.
    Reply
  • yacoub - Friday, December 18, 2009 - link

    Any issues running mixed 4k and 512b drives in the same system? assume the OS (WinXP/Win7) will be able to sort it all out and transferring data from one to the other will occur properly? Reply
  • excalibur3 - Friday, December 18, 2009 - link

    It doesn't really make sense to me why they can't release 4K sector drives without the emulation and just write in big letters "For use with Windows Vista and higher" on it? Consumers now need to be careful about getting SATA vs. PATA drive, what is one more specification that they need to be aware of? Reply
  • DanNeely - Friday, December 18, 2009 - link

    You're assuming users will have something resembling a clue. WD would get its return dept flooded by XP users reporting defective drives.

    What they could theoretically do would be to have a jumper setting that changed if they exposed 512b emulation or 4k native sectors to the OS and defaulted it to 512b. This'd work universally out of the box, and would be a trivial fix for the clueful to switch to the optimal mode.
    Reply
  • geofelt - Friday, December 18, 2009 - link

    If the 4k sector is 10% more space efficient, would that not also also translate into 10% greater data transfer rate. Reply
  • azmodean - Friday, December 18, 2009 - link

    If the raw read is the only bottleneck in the system, you might theoretically get that, but in practice I doubt it's the only bottleneck. That is a good point though, there should be some performance improvement from this (particularly with very large reads.) Reply
  • icrf - Friday, December 18, 2009 - link

    I have a couple 1.5 TB Caviar Green drives in a software RAID 5 array (Linux, mdadm, 64K stripe). Anyone know if I'd run into compatibility problems if I expanded the array to include my old drives plus a new 4K drive? I know I wouldn't be able to make use of the extra space, but the better error correction would be nice. Reply
  • esandrs - Friday, December 18, 2009 - link

    XP/2003 has a disk partition utility that allows setting offsets. I've used it in 2003 for some SAN environments to do partition alignments. It may not be as automated as the WD tool, but it does work on any drive. Reply

Log in

Don't have an account? Sign up now