• @d3Xt3rM
    link
    169 months ago

    You’re right, there isn’t any special effort put towards wear leveling, but the bcache FAQ (NOT bcachefs mind you, but the same should be applicable) mentions this:

    #I thought SSDs wore out quickly if you did regular writes to them?

    For older SSDs, that was true. Newer SSDs will recognize that a given block is getting heavy writes and will actually swap a heavily written block with a more lightly written block (moving the data transparently and using internal pointers to keep track of the move). This is called “wear leveling” and its use can take a drive whose individual blocks might have tens of thousands of writes before failure and produce an SSD that can support up to millions of writes in a given location by moving data around underneath. Also, keep in mind that unlike (most) standard filesystems that treat SSDs as random access devices that can take any number of writes of any size, bcache understands the write issues in SSDs and tunes its write algorithms to minimize the number of erasures needed. As a side note, what we think of as ‘‘write’’ performance problems on SSDs are largely ‘‘erase’’ performance problems.