5 ms·
I tried to get a patch in to do round robin reads in Linux RAID1 a few years ago due to this, but there was too great a request for doing a lot of benchmarks to
by rkeene2 9y ago
I tried to get a patch in to do round robin reads in Linux RAID1 a few years ago due to this, but there was too great a request for doing a lot of benchmarks to show that it was ever useful that I abandoned getting it upstream.
http://www.rkeene.org/viewer/tmp/linux-2.6.35.4-2rrrr.diff.htm http://www.rkeene.org/viewer/tmp/linux-2.6.35.4-2rrrr.diff.h...
- revelation 9y agoIt's either that or because you consistently spelled it round-robinn.
- rkeene2 9y agoThere was discussion about the spelling of "robbin" versus "robin", but that was easily corrected and a new patch submitted. It was definitely the request from the Linux RAID maintainer Neil Brown to provide benchmarks that stopped me from pursuing it further. I created the patch when someonein the Linux IRC channel was reporting this imbalance on their SSDs, so I had no access to hardware SSD hardware to test it on. This was a long time ago.
- rasz 9y agoCounter to common intuition SSD reads arent completely non destructive (they deplete stored charge) and rolling over READ DISTURB counter triggers wear leveling on affected Block. Micron listed 100K READ cycles per block for MLC, 1Mil for SLC, probably 1K for TLC. Thus balancing reads is good for SSD endurance.
- CodeWriter23 9y ago> Thus balancing reads is good for SSD endurance Ergo, non-balanced reading is better for endurance of the array, as it reduces the probability of contemporaneous multi-disk failure. Like disk 2 failing under the read load encountered during a rebuild.
- wtallis 9y agoIn theory, this is true. But the effect of reads on SSD endurance is orders of magnitude smaller than the effect of writes. The reads required for a rebuild aren't going to trigger an endurance-related failure unless the drive was already within one full drive write of failing.
- CodeWriter23 9y agoGood thing you don’t need to write to the remaining drive in a mirror rebuild.
- wtallis 9y agoNot directly, but you will cause some writing to happen internally to the drive if a read disturb is encountered. When the SSD has trouble reading back data due to a read disturb or similar data degradation, it'll recover it using the error correcting codes and then write a fresh copy.
- z3t4 9y agoMy guess is that using the same disk performs better then round robin ... the disk could for example already have the data in cache, while the other disk has not. When it comes to optimization - the results are often unexpected. And you would have to do a lot of benchmarks on different disks, loads, use cases etc to make a conclusion, and you might find unexpected outcomes that you did not think about, like both disks being self-bricked at the same time as they have almost the same rw count.
- digikata 9y agoOne could do delayed round-robin. For one day (or other time period), the first-choice disk is disk A, the next time period, disk B... etc. And for intentional non-uniformity, you can vary the time-period.. it's one day for disk A, half a day for B. etc...
- kpil 9y agoWhat is the gain?
- digikata 9y agoPossibly pushing the likelyhood of first failure out, preferably beyond capital lifetime assumptions? Possibly increasing system performance over the lifetime of the SSDs. But, it's possible that this solution is not particularly useful depending on what mixes of equipment and workloads one expects to operate.