1

Since that i can't use TRIM, i wanted to setup in my SSD disks a free space (10%) so that the SSD's controller uses that to do the wear leveling.

How can i do that? With fdisk?

Also, i read this online:

what's the changed situation with partitions on ssd?

the capacity of these Intel SSDs is about 15-20% higher than advertised, the excess space being used for wear leveling.

If this was true, i shouldn't worry about setting up this little free partition, but i would like to have a confirmation from you.

Many thanks.

1 Answer 1

5

There's nothing special you need to, or can, do. Wear leveling is a firmware function that takes place automatically. The mapping of user-accessible SSD space to internal SSD space is managed by the firmware and you cannot influence it.

The SSD can tolerate so many writes, and there's nothing you can do to increase or decrease that number.

12
  • Are you sure of this? Because if so, i'm going to setup a ZFS raid on 40 SSDs, and most probably i'm not coming back... An empty partition doesn't help, correct? Many thanks David (that's my name too ;)
    – cedivad
    Mar 11, 2012 at 14:49
  • 1
    I'm sure. An empty partition doesn't help. It won't make the drive tolerate more writes, it won't make the drive tolerate less writes. The drive already does wear-leveling, so it doesn't matter where you write. Mar 11, 2012 at 15:01
  • Also, never ever defragment SSDs or other flash memory like USB stick or SD card. Defragmenting adds thousands of writes. SSDs and flash memory are designed to be fragmented (for wear leveling), so I guess it doesn't affect their speed. Mar 11, 2012 at 16:53
  • This answer is not correct. While it is true that the Intel SSDs will do wear-leveling no matter what, the amount of writes they can handle greatly depends on free space and where you write. This is specially true for server situations or situations without TRIM.
    – Mr Alpha
    Mar 12, 2012 at 19:27
  • 2
    @DavidSchwartz: No, the controller does that, that is not the issue here. The problem arises when it does wear-leveling and garbage collection. Since it can only delete data a block at a time it is in the controllers interest to delay doing anything until all the data on the block is invalid and it doesn't need to move anything when deleting the block. But because of wear-leveling and other functions, sooner or later it must move data. Having lots of free blocks means it can delay doing these things until more of the data is invalid and doesn't need moving, thus lowering write-amplification.
    – Mr Alpha
    Mar 13, 2012 at 5:53

You must log in to answer this question.

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