RAIN: Protecting Against Small NAND Failures
Last year's M500 really needed Micron's RAIN (Redundant Array of Independent NAND) technology to satisfy the company's reliability requirement. With IMFT's 20 nm process still young, it made the M500 a more resilient product.
More mature manufacturing lets Crucial pull back on the parity-based redundancy system, freeing up user-accessible space.
In Micron’s magnum opus (Micron RealSSD P320h Review: A PCIe Drive Capable Of 3.2 GB/s), one-eighth of the flash is monopolized by RAIN. Losing all of that space is painful on a PCIe-based drive with 1024 GB of pricey single-level cell memory on-board.
Such a big sacrifice wasn't an option on the desktop-oriented M500, so Micron settled on a ratio of 1:15 instead. The 480 GB model comes with 512 GB on its PCB, so that's 32 GB set aside for RAIN. Normally, a 480 GB drive would use tons of extra over-provisioning to minimize write amplification and improve steady-state write performance. But with the M500's implementation of RAIN, the 480 GB drive still has a standard 7% to lean on.
Given the M550's binary capacity points, the only way to reserve capacity for RAIN and get away with putting 512 GB (for example) on the box would have been adding extra flash, which Micron did not do. Rather, the solution is reducing RAIN’s ratio of parity to storage elements. Instead of 1:15, the M550 rocks a crazy 1:127 relationship. On the 512 GB model, that's still 4 GB of space for RAIN. The 1024 GB version has 8 GB to work with. Naturally, only the smallest flash failures are covered. But the M550 probably doesn't need redundancy as much as the extra capacity anyway.
Here's the breakdown. Crucial's 512 GB M550 has 512 GB of flash inside. Normally, 93.15% of that would be available as usable capacity, since 512 binary GB * 0.931515 equals 512 decimal GB. But that 4 GB for RAIN has to come from somewhere. So, Crucial takes it out of that ~7% spare area, which is approximately 35 GB. Subtracting 4 GB of room for parity information leaves only 31.06 GB of spare area for the controller's housekeeping algorithms. Apparently, this won't be an issue, particularly given the desktop and mobile environments that the M550 is meant to serve. Of course, we have specific tests to validate such claims...