Abstract
Erasure codes such as Reed-Solomon codes can improve the availability of distributed storage in comparison with replication systems. In previous studies we investigated implementation of these codes on multi/many-core architectures, such as Cell/B.E. and GPUs. In particular, it was shown that bandwidth of PCIe bus is a bottleneck for the implementation on GPUs.
In this paper, we focus on investigation how to map systematically the Reed-Solomon erasure codes onto the AMD Accelerated Processing Unit (APU), a new heterogeneous multi/many-core architecture. This architecture combines CPU and GPU in a single chip, eliminating costly transfers between them through the PCI bus. Moreover, APU processors combine some features of Cell/B.E. processors and many-core GPUs, allowing for both vectorization and SIMT processing simultaneously.
Based on the previous works, the method for the systematic mapping of computation kernels of Reed-Solomon and Cauchy Reed-Solomon algorithms onto the AMD APU architecture is proposed. This method takes into account properties of the architecture on all the levels of its parallel processing hierarchy.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Gomez, L.B., Nicolae, B., Maruyama, N., Cappello, F., Matsuoka, S.: Scalable Reed-Solomon-based reliable local storage for HPC applications on IaaS clouds. In: Kaklamanis, C., Papatheodorou, T., Spirakis, P.G. (eds.) Euro-Par 2012. LNCS, vol. 7484, pp. 313–324. Springer, Heidelberg (2012)
Branover, A., Foley, D., Steinman, W.: Amd fusion APU: llano. IEEE Micro 32(2), 28–37 (2012)
Chen, T., Raghavan, R., Dale, J., Iwata, E.: Cell broadband engine architecture and its first implementation: a performance view. IBM J. Res. Dev. 51, 559–572 (2007)
Collins, R., Plank, J.: Assessing the performance of erasure codes in the wide-area. In: Proceedings of 2005 International Conference on Dependable Systems and Networks - DSN’05, pp. 182–187. IEEE Computer Society (2005)
Curry, M.L., Skjellum, A., Lee Ward, H., Brightwell, R.: Gibraltar: a Reed-Solomon coding library for storage applications on programmable graphics processors. Concurr. Comput. Pract. Exp. 23(18), 2477–2495 (2011)
Fatahalian, K., Houston, M.: A closer look at gpus. Commun. ACM 51(10), 50–57 (2008)
Kher, V., Kim, Y.: Securing distributed storage: challenges, techniques, and systems. In: Proceedings of the 2005 ACM Workshop on Storage Security and Survivability, StorageSS ’05, pp. 9–25. ACM, New York (2005)
Khronos Group: The opencl specification version 1, 2 (2012)
Kubiatowicz, J., Bindel, D., Chen, Y., Czerwinski, S., Eaton, P., Geels, D., Gummadi, R., Rhea, S., Weatherspoon, H., Weimer, W., Wells, C., Zhao, B.: OceanStore: an architecture for global-scale persistent storage. In: Proceedings of 9th International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS 2000, pp. 190–201 (2000)
L. Kuczynski and R. Wyrzykowski. Efficient Data Management in PC Meta-Clusters. The Publishing Office of Czestochowa University of Technology, 2011.
Plank, J.: A tutorial on Reed-Solomon coding for fault-tolerance in raid-like systems. Softw. Pract. Exp. 27, 995–1012 (1997)
Plank, J., Ding, Y.: Note: correction to the 1997 tutorial on Reed-Solomon coding. Softw. Pract. Exp. 35, 189–194 (2005)
Plank, J., Luo, J., Schuman, C., Xu, L., Wilcox-O’Hearn, Z.: A performance evaluation and examination of open-source erasure coding libraries for storage. In: FAST-09: 7th USENIX Conference on File and Storage Technologies, pp. 253–265 (2009)
Plank, J., Simmerman, S., Schuman, C.: Jerasure: a library in C/C++ facilitating erasure coding for storage applications. https://www.cs.utk.edu/plank/plank/papers/CS-08-627.pdf
Plank, J., Thomason, M.: A practical analysis of low-density parity-check erasure codes for wide-area storage applications. In: Proceeding of 2004 International Conference on Dependable Systems and Networks - DSN’04, pp. 115–124. IEEE Computer Society (2004)
Weatherspoon, H., Kubiatowicz, J.D.: Erasure coding vs. replication: a quantitative comparison. In: Druschel, P., Kaashoek, M.F., Rowstron, A. (eds.) IPTPS 2002. LNCS, vol. 2429, p. 328. Springer, Heidelberg (2002)
Wozniak, M., Olas, T., Wyrzykowski, R.: Parallel implementation of conjugate gradient method on graphics processors. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Wasniewski, J. (eds.) PPAM 2009, Part I. LNCS, vol. 6067, pp. 125–135. Springer, Heidelberg (2010)
Wyrzykowski, R., Kuczynski, L.: Towards secure data management system for grid environment based on the cell broadband engine. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Wasniewski, J. (eds.) PPAM 2007. LNCS, vol. 4967, pp. 825–834. Springer, Heidelberg (2008)
Wyrzykowski, R., Kuczynski, L., Wozniak, M.: Towards efficient execution of erasure codes on multicore architectures. In: Jónasson, K. (ed.) PARA 2010, Part II. LNCS, vol. 7134, pp. 357–367. Springer, Heidelberg (2012)
Wyrzykowski, R., Kuczynski, L., Wozniak, M.: Systematic mapping of Reed-Solomon erasure codes on heterogeneous multicore architectures. In: High-Performance Computing on Complex Environments, 25 pp. Wiley, New york (2014)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Wyrzykowski, R., Woźniak, M., Kuczyński, L. (2014). Efficient Execution of Erasure Codes on AMD APU Architecture. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Waśniewski, J. (eds) Parallel Processing and Applied Mathematics. PPAM 2013. Lecture Notes in Computer Science(), vol 8384. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-55224-3_57
Download citation
DOI: https://doi.org/10.1007/978-3-642-55224-3_57
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-55223-6
Online ISBN: 978-3-642-55224-3
eBook Packages: Computer ScienceComputer Science (R0)