ABSTRACT
MapReduce is a programming model capable of processing large amounts of data in parallel across hundreds of compute nodes in a cluster. Many applications have leveraged the power of this model, including a number of compute-hungry applications in machine learning. MapReduce can meet the demands of massive data analysis in applications such as web search, digital media selection, and online shopping analytics. The Mahout recommendation system is one of the most popular open source recommendation systems that employs machine learning techniques. Mahout provides us with a parallel computing infrastructure that can be applied to implement a range of applications that work with large datasets. A complementary trend in cluster computing has been the use of GPUs to increase the performance of data-intensive applications. There have been several efforts to utilize GPUs to accelerate the MapReduce framework to improve performance. HadoopCL is a framework that auto-generates OpenCL kernels from Hadoop tasks and can then run them across a heterogeneous cluster. In this paper, we analyze the performance of a Mahout recommendation system running on different cluster platforms, including CPU-only platforms and heterogeneous platforms, where both discrete GPUs and integrated APUs can be evaluated. We propose a cooperative HadoopCL model that improves both GPU/APU programming flexibility and performance.
- Apache mahout website. http://mahout.apache.org/.Google Scholar
- D. A. Alcantara, V. Volkov, S. Sengupta, M. Mitzenmacher, J. D. Owens, and N. Amenta. Building an efficient hash table on the GPU. In W. W. Hwu, editor, GPU Computing Gems, volume 2, chapter 4, pages 39–53. Morgan Kaufmann, Oct. 2011..Google Scholar
- B. Catanzaro, N. Sundaram, and K. Keutzer. A map reduce framework for programming graphics processors. In In Workshop on Software Tools for MultiCore Systems, 2008. URL http://citeseerx.ist.psu.edu/viewdoc/ summary?doi=10.1.1.141.1644.Google Scholar
- L. Chen, X. Huo, and G. Agrawal. Accelerating mapreduce on a coupled cpu-gpu architecture. In Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis, SC ’12, pages 25:1– 25:11, Los Alamitos, CA, USA, 2012. IEEE Computer Society Press. ISBN 978-1-4673-0804-5. URL http://dl.acm.org/ citation.cfm?id=2388996.2389030. Google ScholarDigital Library
- J. Dean and S. Ghemawat. Mapreduce: simplified data processing on large clusters. Commun. ACM, 51(1):107–113, Jan. 2008. ISSN 0001-0782.. URL http://doi.acm.org/10. 1145/1327452.1327492. Google ScholarDigital Library
- B. Gaster, L. Howes, D. Kaeli, P. Mistry, and D. Schaa. Heterogeneous computing with OpenCL, 2nd Edition. Morgan Kaufmann, 2011. Google ScholarDigital Library
- G.Frost. Aparapi website. https://code.google.com/p/ aparapi/.Google Scholar
- B. He, W. Fang, Q. Luo, N. K. Govindaraju, and T. Wang. Mars: A mapreduce framework on graphics processors. In Proceedings of the 17th International Conference on Parallel Architectures and Compilation Techniques, PACT ’08, pages 260–269, New York, NY, USA, 2008. ACM. ISBN 978- 1-60558-282-5.. URL http://doi.acm.org/10.1145/ 1454115.1454152. Google ScholarDigital Library
- J. A. Konstan, B. N. Miller, D. Maltz, J. L. Herlocker, L. R. Gordon, and J. Riedl. Grouplens: Applying collaborative filtering to usenet news. Commun. ACM, 40(3):77–87, Mar. 1997. ISSN 0001-0782.. URL http://doi.acm.org/10. 1145/245108.245126. Google ScholarDigital Library
- Y. Lin, S. Okur, and C. Radoi. Hadoop+aparapi: Making heterogenous mapreduce programming easier. 2012.Google Scholar
- G. Linden, B. Smith, and J. York. Amazon.com recommendations: item-to-item collaborative filtering. Internet Computing, IEEE, 7(1):76–80, Jan 2003. ISSN 1089-7801.. Google ScholarDigital Library
- NVIDIA Corporation. NVIDIA CUDA C Programming Guide, June 2011.Google Scholar
- B. Sarwar, G. Karypis, J. Konstan, and J. Riedl. Item-based collaborative filtering recommendation algorithms. In Proceedings of the 10th International Conference on World Wide Web, WWW ’01, pages 285–295, New York, NY, USA, 2001. Google ScholarDigital Library
- ACM. ISBN 1-58113-348-0.. URL http://doi.acm.org/ 10.1145/371920.372071.Google Scholar
- J. A. Stuart and J. D. Owens. Multi-gpu mapreduce on gpu clusters. In Proceedings of the 2011 IEEE International Parallel & Distributed Processing Symposium, IPDPS ’’11, pages 1068–1079, Washington, DC, USA, 2011. IEEE Computer Society. ISBN 978-0-7695-4385-7.. URL http: //dx.doi.org/10.1109/IPDPS.2011.102. Google ScholarDigital Library
Index Terms
- Mahout on heterogeneous clusters using HadoopCL
Recommendations
On the Efficacy of a Fused CPU+GPU Processor (or APU) for Parallel Computing
SAAHPC '11: Proceedings of the 2011 Symposium on Application Accelerators in High-Performance ComputingThe graphics processing unit (GPU) has made significant strides as an accelerator in parallel computing. However, because the GPU has resided out on PCIe as a discrete device, the performance of GPU applications can be bottlenecked by data transfers ...
Accelerating simulation of agent-based models on heterogeneous architectures
GPGPU-6: Proceedings of the 6th Workshop on General Purpose Processor Using Graphics Processing UnitsThe wide usage of GPGPU programming models and compiler techniques enables the optimization of data-parallel programs on commodity GPUs. However, mapping GPGPU applications running on discrete parts to emerging integrated heterogeneous architectures ...
The tradeoffs of fused memory hierarchies in heterogeneous computing architectures
CF '12: Proceedings of the 9th conference on Computing FrontiersWith the rise of general purpose computing on graphics processing units (GPGPU), the influence from consumer markets can now be seen across the spectrum of computer architectures. In fact, many of the high-ranking Top500 HPC systems now include these ...
Comments