Introduction to finite fields and their applications
Introduction to finite fields and their applications
RAID: high-performance, reliable secondary storage
ACM Computing Surveys (CSUR)
EVENODD: an optimal scheme for tolerating double disk failures in RAID architectures
ISCA '94 Proceedings of the 21st annual international symposium on Computer architecture
Computer graphics (2nd ed. in C): principles and practice
Computer graphics (2nd ed. in C): principles and practice
A tutorial on Reed-Solomon coding for fault-tolerance in RAID-like systems
Software—Practice & Experience
Communications of the ACM
Error-Control Coding for Data Networks
Error-Control Coding for Data Networks
Efficient galois field arithmetic on SIMD architectures
Proceedings of the fifteenth annual ACM symposium on Parallel algorithms and architectures
Technological impact of magnetic hard disk drives on storage systems
IBM Systems Journal
LU-GPU: Efficient Algorithms for Solving Dense Linear Systems on Graphics Hardware
SC '05 Proceedings of the 2005 ACM/IEEE conference on Supercomputing
Fast GPU ray tracing of dynamic meshes using geometry images
GI '06 Proceedings of Graphics Interface 2006
Using device diversity to protect data against batch-correlated disk failures
Proceedings of the second ACM workshop on Storage security and survivability
An analysis of latent sector errors in disk drives
Proceedings of the 2007 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
Disk failures in the real world: what does an MTTF of 1,000,000 hours mean to you?
FAST '07 Proceedings of the 5th USENIX conference on File and Storage Technologies
Failure trends in a large disk drive population
FAST '07 Proceedings of the 5th USENIX conference on File and Storage Technologies
Migrating server storage to SSDs: analysis of tradeoffs
Proceedings of the 4th ACM European conference on Computer systems
A Lightweight, GPU-Based Software RAID System
ICPP '10 Proceedings of the 2010 39th International Conference on Parallel Processing
Row-diagonal parity for double disk failure correction
FAST'04 Proceedings of the 3rd USENIX conference on File and storage technologies
GPUstore: harnessing GPU computing for storage systems in the OS kernel
Proceedings of the 5th Annual International Systems and Storage Conference
Hi-index | 0.00 |
Reed–Solomon coding is a method for generating arbitrary amounts of erasure correction information from original data via matrix–vector multiplication in finite fields. Previous work has shown that modern CPUs are not well-matched to this type of computation, requiring applications that depend on Reed–Solomon coding at high speeds (such as high-performance storage arrays) to use hardware implementations. This work demonstrates that high performance is possible with current cost-effective graphics processing units across a wide range of operating conditions and describes how performance will likely evolve in similar architectures. It describes the characteristics of the graphics processing unit architecture that enable high-speed Reed–Solomon coding. A high-performance practical library, Gibraltar, has been prototyped that performs Reed–Solomon coding on graphics processors in a manner suitable for storage arrays, along with applications with similar data resiliency needs. This library enables variably resilient erasure correcting codes to be used in a broad range of applications. Its performance is compared with that of a widely available CPU implementation, and a rationale for its API is presented. Its practicality is demonstrated through a usage example. Copyright © 2011 John Wiley & Sons, Ltd. (Gibraltar is available at , along with sample applications to test it.)