• DocumentCode
    2052587
  • Title

    Accelerating Galois Field Arithmetic for Reed-Solomon Erasure Codes in Storage Applications

  • Author

    Kalcher, Sebastian ; Lindenstruth, Volker

  • Author_Institution
    Frankfurt Inst. for Adv. Studies (FIAS), Goethe Univ., Frankfurt, Germany
  • fYear
    2011
  • fDate
    26-30 Sept. 2011
  • Firstpage
    290
  • Lastpage
    298
  • Abstract
    Galois fields (also called finite fields) play an essential role in the areas of cryptography and coding theory. They are the foundation of various error- and erasure-correcting codes and therefore central to the design of reliable storage systems. The efficiency and performance of these systems depend considerably on the implementation of Galois field arithmetic, in particular on the implementation of the multiplication. In current software implementations multiplication is typically performed by using pre-calculated lookup tables for the logarithm and its inverse or even for the full multiplication result. However, today the memory subsystem has become one of the main bottlenecks in commodity systems and relying on large in-memory data structures accessed from inner loop code can severely impact the overall performance and deteriorate scalability. In this paper, we study the execution of Galois field multiplication on modern processor architectures without using lookup tables. Instead we propose to trade computation for memory references and, therefore, to perform full polynomial multiplication with modular reduction using the generator polynomial of the Galois field. We present a SIMDized (vectorized) implementation of the polynomial multiplication algorithm in GF(2^16) and show the performance on commodity processors and on GPGPU accelerators.
  • Keywords
    arithmetic; arithmetic codes; error correction codes; random-access storage; table lookup; GPGPU accelerators; Galois field arithmetic acceleration; Galois field multiplication; Reed-Solomon erasure codes; SIMDized implementation; coding theory; cryptography; erasure-correcting codes; error-correcting codes; finite fields; full polynomial multiplication; generator polynomial; inner loop code; large in-memory data structures; memory references; memory subsystem; modern processor architectures; modular reduction; polynomial multiplication algorithm; pre-calculated lookup tables; reliable storage systems; software implementations multiplication; storage applications; vectorized implementation; Encoding; Finite element methods; Galois fields; Generators; Graphics processing unit; Polynomials; Registers;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Cluster Computing (CLUSTER), 2011 IEEE International Conference on
  • Conference_Location
    Austin, TX
  • Print_ISBN
    978-1-4577-1355-2
  • Electronic_ISBN
    978-0-7695-4516-5
  • Type

    conf

  • DOI
    10.1109/CLUSTER.2011.40
  • Filename
    6061147