3

I have heard from various sources that if you use close to all of the storage on your disk you will run into performance and/or reliability issues. Is this also true of SSDs? If so how much free space is it recommended that I leave on the drive?

1
  • 1
    Yes, that's true. Sometimes.
    – mailq
    Oct 26, 2011 at 22:03

2 Answers 2

3

There is no technical problem with using up most of your storage - you do run into other issue if you use up ALL of your storage, like you are out of room. The performance hit you have been hearing about is actually a problem with spinning disk hard drives.

The issue that you run into with spinning disk is that as you fill up the drive, the data get written out farther and farther on the platter, causing the drive head to have to move farther back and forth on the platter to actually get to the data. This will introduce a disk latency hit.

That being said, with lower end SSDs you do have to watch out because they do not have as many spare blocks set aside to replace failed ones. So when they run out of spare blocks and can't replace them you can run into performance and stability issues like you would with any drive that has an increasing number of bad sectors.

As far as how much to leave free? I would leave the normal amount you would for any other server in your environment so you have enough time to react to the low space alerts and not run out of space.

2

For SSDs it might also be better to leave some free space, but for a different reason than for HDDs, for which Zypher already pointed out the reason.

SSD performance is not (much) influenced by fragmentation, but is by free blocks that can be garbage collected by the SSD controller. Depending on the quality of the garbage controller and if your SSD, OS or filesystem do not support TRIM, it might increase performance in the long term to leave some SSD space unpartitioned to have more free blocks available for writes. This space needs to be unpartitioned, free space on the filesystem is irrelevant if the OS doesn't notify the SSD controller with TRIM that it these blocks are indeed free.

I don't know what a sufficient amount of free space should be. I myself left about 5-10% unpartitioned on SSD drives where TRIM wasn't supported (Linux, before kernel 2.6.33 and on an encrypted drive).

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .