24

I can reformat a brand new 2TB WD Passport drive to exFAT, with choice of many "Allocation Unit Size":

128kb
256kb
512kb
1024kb
4096kb
16384kb
32768kb

which one is best if this drive is mainly used for recording HDTV programs using Media Center on Windows 7? thanks.

This is related to question: Is it best to reformat our external Hard drive to exFAT for compatibility with Mac?

27

You should first understand what

Allocation Unit Size (AUS)

means.

It is the smallest data block on the disk. Your actual data will be seperated to those units while saving to the disk. For example, if you have a file sized 512KB and you have 128KB allocation unit size, your file will be saved in 4 units in the disk (512KB/128KB).

If your file's size is 500KB and you have 128KB AUS, your file still be saved in 4 units in the disk because as mentioned above 128KB is the smallest size of an allocation unit. 384KB will be allocated in 3 units and remaining 116KB will be allocated in another unit. You can observe this behaviour on file properties screen on Windows, what is your file size and how much space this file actually covers on the disk. And the operating system reads only that AUSd much data at a low level disk read operation.

Those being said, using large AUS significantly reduces the free space utilization due to not using the last allocation unit completely. And as a side effect, the number of files to store on the disk is reduced due to same problem, last AU not being used fully. But, here's the trade-off, using large AUS, significantly again, improves the disk reading performance. The O.S can read more data at one read. Imagine, O.S makes couple of disk reads to completely read a GB sized file!..

Using small AUS improves the free space utilization but reduces the disk read performance. Think using large AUS in reverse, same category problems and improvements, but in reverse...

So, what is the conclusion here? If you will store large, I mean "large!", files on the disk, higher AUS will give you appreciable read performance while reducing the file count and free space...

Which AUS you should use? This depends on how much your average file size is. Also you can compute the free space utilization according to your file sizes.

  • Very lucid breakdown. But does each cluster have any inherent storage overhead (e.g. indices or the cluster equivalent of sector headers)? And are there any interactions with physical/emulated sector sizes or cache sizes? Lastly, do larger cluster sizes negatively affect random access performance? 4KB sector HDDs seem to have lower random access performance even though they have higher throughput than 512byte HDDs. – Lèse majesté Apr 27 '12 at 2:40
  • 2
    There are no significant storage overhead at high levels. Besides there is enough hrdw overhead since the actual physical sector size is 512Bytes... There is a part of file system formatting that records the cluster information, from how many sector this cluster is created, to the partition structure. The sector size emulation is a job of disk driver. O.S. file system server should deal with logical organization (NTFS, FAT etc) at high level O.S ops, smallest unit reads/writes at low level O.S ops and disk driver itself must work back to back with controller(hardware) for low level hardware... – The_aLiEn Apr 27 '12 at 3:33
  • ...access which contains the emulation. And caching is not a job of O.S. It is done by hardware itself. O.S asks for certain data, disk decides wheter look on cache or platter itself for it... Random access performance should actually not be a general performance criteria when having parameters like A.U.S.. Think it this way: ... – The_aLiEn Apr 27 '12 at 3:33
  • .. N sized units, M number units, N*M capacity disk, "what is the probability of hitting this unit?" and remember, disk has to be more precise in locating the beginnings of the units.. So, Random access performance is something bound with M^2/N.. 4K units, 8 units, 32K capacity disk. R.A bound with 64/4. 8K units, 4 units, same capacity, same disk. R.A becomes 16/8. You wouldn't find an article about this kind of calculation, but believe me :) It is more job to "randomly" locate a data using large unit sizes over small sizes – The_aLiEn Apr 27 '12 at 3:50
4

Given that HD recordings are large files, a large allocation unit (16384 or 32768 KB) will give better performance. The impact of slack space (space wasted due to allocation units not used fully--files are stored in allocation units which must be used as whole units) will be limited with a small number of files. On the other hand, if you have many smaller files, use a smaller allocation unit to reduce wasted space.

2

You can safely use 4K allocation unit for exFAT. Even if you have thousands of small files you won't waste a lot of space. In case of default 128KB allocation unit for e.g. 64GB usb stick, 1024 files of 4K bytes will occupy 128MB instead of 4MB, since every file requires at least one allocation unit.

If you use your disk mostly for audio and video files use a larger allocation unit.

FAT32 is not an option for disks larger than 32GB so choose whatever Windows allows.

  • Which size is a good intermediate? I'd like to store both very small and very large files. – PythonNut Oct 19 '15 at 17:24
  • 1
    @PythonNut: 4k. Always use 4k. There is no significant benefit to larger allocation units, but if you ever might store small files on the drive, there are huge disadvantages to larger units. – R.. Oct 29 '18 at 3:10
0

Basically, the larger the files you intend on keeping the larger each allocation unit size you may want in use - but not too big or too small! I think DragonLord explained it pretty well.

So if wasted space bugs you then maybe you might want to think about using a different file system. Something like EXT4 perhaps. Problem there is Microsoft OS's (Windows, really) don't work too well with anything other than FAT (vFAT, FAT32, etc.) or NTFS. And if you ever end up with files larger than 4Gig you may end up cursing any FAT type system you may be using. Therefore, I would recommend using the NTFS file system with the recommended allocation unit size (I believe that's 4K). That way, if you end up with files larger than 4Gig you will still be able to store your monster files at least until you can break them up or transcode them into something smaller. (I assume we're talking about huge multimedia files which is why I bring up "transcoding" since I seem to always find ways to make files smaller when I transcode, especially if they were recorded using MCE.)

About the only reason I can see for using FAT (vFAT, FAT32, FAT16, etc.) is so that other operating systems can read/write files on the storage device. FAT is about as universally accepted as it gets. Otherwise, I don't recommend using FAT (unless the device's capacity is 4Gig or less) - use NTFS at least for Windows. You can always make another partition with a different file system even if it's on the same physical drive. Hope it helps.

-1

As Wikipedia says:

To provide improvement in the allocation of cluster storage for a new file, Microsoft incorporated a method to pre-allocate contiguous clusters and bypass the use of updating the FAT table.

So basically you could choose 4KB or smaller allocation unit with exFAT and be safe when writing bigger files, like HD video material.

-1

Default cluster sizes for NTFS

The following table describes the default cluster sizes for NTFS. Volume size Windows NT 3.51 Windows NT 4.0 Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003, Windows XP, Windows 2000 7 MB–512 MB 512 bytes 4 KB 4 KB 512 MB–1 GB 1 KB 4 KB 4 KB 1 GB–2 GB 2 KB 4 KB 4 KB 2 GB–2 TB 4 KB 4 KB 4 KB 2 TB–16 TB Not Supported* Not Supported* 4 KB 16TB–32 TB Not Supported* Not Supported* 8 KB 32TB–64 TB Not Supported* Not Supported* 16 KB 64TB–128 TB Not Supported* Not Supported* 32 KB 128TB–256 TB Not Supported* Not Supported* 64 KB

256 TB Not Supported Not Supported Not Supported

Note The asterisk (*) means that it is not supported because of the limitations of the master boot record (MBR). Default cluster sizes for FAT16

The following table describes the default cluster sizes for FAT16. Volume size Windows NT 3.51 Windows NT 4.0 Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003, Windows XP, Windows 2000 7 MB–8 MB Not supported Not supported Not supported 8 MB–32 MB 512 bytes 512 bytes 512 bytes 32 MB–64 MB 1 KB 1 KB 1 KB 64 MB–128 MB 2 KB 2 KB 2 KB 128 MB–256 MB 4 KB 4 KB 4 KB 256 MB–512 MB 8 KB 8 KB 8 KB 512 MB–1 GB 16 KB 16 KB 16 KB 1 GB–2 GB 32 KB 32 KB 32 KB 2 GB–4 GB 64 KB 64 KB 64 KB 4 GB–8 GB Not supported 128 KB* Not supported 8 GB–16 GB Not supported 256 KB* Not supported

16 GB Not supported Not supported Not supported Note The asterisk (*) means that it is available only on media with a sector size greater than 512 bytes. Default cluster sizes for FAT32

The following table describes the default cluster sizes for FAT32. Volume size Windows NT 3.51 Windows NT 4.0 Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003, Windows XP, Windows 2000 7 MB–16MB Not supported Not supported Not supported 16 MB–32 MB 512 bytes 512 bytes Not supported 32 MB–64 MB 512 bytes 512 bytes 512 bytes 64 MB–128 MB 1 KB 1 KB 1 KB 128 MB–256 MB 2 KB 2 KB 2 KB 256 MB–8GB 4 KB 4 KB 4 KB 8GB–16GB 8 KB 8 KB 8 KB 16GB–32GB 16 KB 16 KB 16 KB 32GB–2TB 32 KB Not supported Not supported

2TB Not supported Not supported Not supported Default cluster sizes for exFAT

The following table describes the default cluster sizes for exFAT. Volume size Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003, Windows XP 7 MB–256 MB 4 KB 256 MB–32 GB 32 KB 32 GB–256 TB 128 KB

256 TB Not supported

  • 1
    This answer should be properly formatted. – Ramhound Oct 18 '16 at 14:51

Your Answer

By clicking "Post Your Answer", you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.