A Microdriver Architecture for Error Correcting Codes inside the Linux Kernel

被引:0
|
作者
Brinkmann, A. [1 ]
Eschweiler, D. [1 ]
机构
[1] Univ Paderborn, Paderborn Ctr Parallel Comp PC2, Paderborn, Germany
关键词
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Coding tasks, such as encryption of data or the generation of failure-tolerant codes, belong to the most computationaly expensive tasks inside the Linux kernel. Their integration into the kernel enables the user to transparently access these functionalities, encrypted hard disks can be used in the same way as unencrypted ones. Nevertheless, Linux as a monolithic kernel is not prepared to support these expensive tasks by accessing modern hardware accelerators, like graphics processing units (GPUs), as the corresponding accelerator libraries, like the CUDA-API for NVIDIA GPUs, only offer user-space APIs. Linux is often used in conjunction with parallel file systems in high performance cluster environments and the tremendous storage growth in these environments leads to the requirement of multi-error correcting codes. Parallel file systems, which often run on a storage cluster, are required to store the calculated results without huge waiting times. Whereas the frontend of such a storage cluster can be build with standard PCs, it is in contrast nearly impossible to build a capable RAID backend with end user hardware up to now. This work investigated the potential of graphic cards for such coding applications like RAID in the Linux kernel. For this purpose, a special microdriver concept (Barracuda) has been designed that can be integrated into Linux without changing kernel APIs. For the investigation of the performance of this concept, the Linux RAID 6-system and the applied Reed-Solomon code have been exemplary extended and studied. The resulting measurements outline opportunities and limitations of our microdriver concept. On the one hand, the concept achieves a speed-up of 72 for complex, 8-failure correcting codes, while no additional speed-up can be generated for simpler, 2-error correcting codes. An example application for Barracuda could therefore be replacement of expensive RAID systems in cluster storage environments.
引用
收藏
页数:10
相关论文
共 50 条
  • [21] On Efficient Repetition Error Correcting Codes
    Tallini, Luca G.
    Elarief, Noha
    Bose, Bella
    2010 IEEE INTERNATIONAL SYMPOSIUM ON INFORMATION THEORY, 2010, : 1012 - 1016
  • [22] Error-correcting codes and cryptography
    Hideki Imai
    Manabu Hagiwara
    Applicable Algebra in Engineering, Communication and Computing, 2008, 19 : 213 - 228
  • [23] ON TERNARY ERROR CORRECTING LINE CODES
    FERREIRA, HC
    HOPE, JF
    NEL, AL
    IEEE TRANSACTIONS ON COMMUNICATIONS, 1989, 37 (05) : 510 - 515
  • [24] BURST-ERROR CORRECTING CODES
    BENELLI, G
    BIANCIARDI, C
    CAPPELLINI, V
    LONGO, G
    ALTA FREQUENZA, 1977, 46 (12): : 568 - 581
  • [25] SPECIAL ISSUE ON ERROR CORRECTING CODES
    POLI, A
    DISCRETE MATHEMATICS, 1985, 56 (2-3) : 93 - 94
  • [26] CONSTRUCTION OF ERROR CORRECTING CODES BY INTERPOLATION
    MANDELBAUM, DM
    IEEE TRANSACTIONS ON INFORMATION THEORY, 1979, 25 (01) : 27 - 35
  • [27] NUMBER OF INDECOMPOSABLE ERROR CORRECTING CODES
    BOGART, KP
    NOTICES OF THE AMERICAN MATHEMATICAL SOCIETY, 1976, 23 (02): : A315 - A315
  • [28] Error-Correcting Codes for Multipermutations
    Buzaglo, Sarit
    Yaakobi, Eitan
    Etzion, Tuvi
    Bruck, Jehoshua
    2013 IEEE INTERNATIONAL SYMPOSIUM ON INFORMATION THEORY PROCEEDINGS (ISIT), 2013, : 724 - +
  • [29] On the efficiency of the shortened error correcting codes
    Liaperdos, I.
    Paraskevas, I.
    Potirakis, S. M.
    INTERNATIONAL JOURNAL OF ELECTRICAL ENGINEERING EDUCATION, 2013, 50 (02) : 201 - 212
  • [30] Online error correcting output codes
    Escalera, Sergio
    Masip, David
    Puertas, Eloi
    Radeva, Petia
    Pujol, Oriol
    PATTERN RECOGNITION LETTERS, 2011, 32 (03) : 458 - 467