cleared through the authors ’ institutions. Approximate word count: 8,300. Abstract—Large scale, archival and wide-area storage systems use erasure codes to protect users from losing data due to the inevitable failures that occur. All but the most basic erasure codes employ bit-matrices to perform encoding and decoding. These bit-matrices are massaged so that encoding and decoding become described by lists of exclusive-or (XOR) operations. When converting matrices to lists of XOR operations, there are CPU savings that can result from strategically scheduling the XOR operations and leveraging intermediate results so that fewer XOR’s are performed. It is an open problem to derive a schedule from a bit-matrix that minimizes the number of XOR operations. We attack this open problem, deriving two new heuristics called Uber-CHRS and X-Sets to schedule encoding and decoding bit-matrices with reduced XOR operations. We evaluate these heuristics in a variety of realistic erasure coding settings and demonstrate that they are a significant improvement over previously published heuristics. In particular, a hybrid of the two heuristics, which we call Uber-XSet, provides consistently good schedules across all of our tests. We provide an opensource implementation of these heuristics so that practitioners may leverage our work. Keywords-Erasure codes; Fault-tolerant storage; RAID; Disk failures
To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.