Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

When creating a new NTFS partition one is asked to choose a cluster size. The default size is 4k but one can choose a smaller sizes, too. 512 bytes is the smallest.

The smaller size leads to wasted space reduction. Each file occupies 1 or more clusters depending on file size. If the file size can be divided by the cluster size then no space is wasted by default. Otherwise only some part of the last cluster will store file data and remaining space will be wasted. On average it's about half of the cluster size per file. Considering that a typical partition stores tens of thousands of files 265 vs. 2k per file sounds like a big deal for me.

I always choose 512 bytes to reduce the amount of wasted space but I believe that there might be some negative effects of using smaller clusters. Otherwise 512 bytes would be used by default. What are those drawbacks?

share|improve this question

3 Answers 3

up vote 2 down vote accepted

Smaller cluser size means that a file will be distributed between more clusters (obvious). This means potentially more fragmentation and possibly more lookups to find the clusters. It is the usual speed vs size optimisation. As the hard disks are cheap, I would go for larger cluster sizes, but anyway, you will probably not see that much difference ...

share|improve this answer

NTFS is extent based (like xfs, ext4 and more on the *nix side) so the slowdown you get from non-extent based filesystems (eg fat, ext3) is reduced.

There's still an overhead though, and where it starts to hurt is fragmentation. Windows is HORRIBLE about fragmentation, try running defraggler to see how even sequentially written files (eg from program installation) can end up in 30+ fragments.

I'd generally suggest 4k as a good size, although if a drive is to be used for large media files 64k or larger can help.

http://www.defraggler.com/

share|improve this answer

I wouldn't change from the default cluster size, unless you really know what you are doing.

Yes, smaller cluster sizes do mean less slack space and thus less wasted space. However, smaller cluster sizes also mean that less data is being transferred from the disk in each read operation and thus you may get a drop in read performance. It is also likely that there will be less fragmentation with a larger cluster size, as the data is more likely to be stored either in one cluster, or contiguously.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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