DOI QR코드

DOI QR Code

WSP: Whole-Split Passing Technique for Accelerating Hadoop Map Ttask by Using GPU

  • Gu, Bongen (Department of Computer Engineering, Korea National University of Transportation)
  • Received : 2014.03.31
  • Accepted : 2014.05.16
  • Published : 2014.06.30

Abstract

MapReduce is a programming model for distributed computing to handle large-scale data. Hadoop is one of MapReduce implementation frameworks, and includes a distributed file system called as HDFS. A compute-intensive MapReduce application is an important class of applications. Many research projects try to accelerate MapReduce task of these applications by using GPU. Our work is one of these researches. Especially, we focus on the accelerating Map task by using GPU. In this paper, we propose the whole-split passing technique. Our technique is that Map task transfers the whole-split block to GPU instead of one or a small number of records. Therefore our technique can reduce the communicating overhead between Hadoop Map task and kernel executed on CPU and GPU, respectively, and fully use GPU's parallel computing power by initiating threads as many as the number of records in split. To show the validation of our technique, we perform experiments. The results of our experiments show that the whole-split passing technique can reduce the execution time of Map task.

MapReduce는 대용량 데이터 처리를 위한 분산 처리 프로그래밍 모델이다. Hadoop은 MapReduce를 구현한 프레임워크 중의 하나이며, 분산 파일 시스템인 HDFS를 포함하고 있다. 계산 집약적인 MapReduce 응용은 중요한 Hadoop 응용 중의 하나이다. 많은 연구자들은 GPU를 이용하여 이들 응용의 MapReduce 태스크를 고속화하려고 하고 있다. 본 논문에서는 GPU를 이용한 MapReduce 태스크 고속화, 특히 Map 태스크 고속화를 위해 스플릿 전달(Whole Split Passing) 기법을 제안하다. 이 기법은 Map 태스크가 스플릿 내의 한 개 또는 소소의 레코드를 GPU에게 전달하는 대신에 스플릿 전체를 한 번에 전송하는 것이다. 따라서 CPU에서 실행되는 Map 태스크와 GPU에서 실행되는 커널 사이의 데이터 전송 오버헤드를 감소시킬 수 있고, 스플릿 내의 레코드 수만큼의 스레드를 실행할 수 있어 GPU의 병렬 처리 성능을 충분히 사용할 수 있다. 이 기법이 유효함을 보이기 위해 실험을 하였으며, 그 결과는 스플릿 전체를 한 번에 전송하는 기법이 Map 태스크의 실행 시간을 감소시킬 수 있음을 보였다.

Keywords

References

  1. J Dean and J Ghemawat, "MapReduce: Simplified data processing on large cluster", Commun. ACM, pp. 107-113, Jan. 2008
  2. P Jorda, C David, B Yolanda, T Jordi, A Eduard, and S. Malgorzata, "Performance-Driven Task Co- Scheduling for MapReduce Environment", Symp. NOMS'2010, pp. 373-380, April 2010.
  3. Robson Cordeiro, Caetano Traina, Agma Traina, Julio Lopez, U Kang, and Christors Faloutsos, "Clustering Very Large Multi-dimensional Datasets with MapReduce", Proceedings of the 17th ACM SIG KDD International Conference on Knowledge discovery and Data mining, pp. 690-698, Aug. 2011.
  4. M Xin, H Li, and J Lu, "A Research of MapReduce with GPU Acceleration", PDPTA'12, pp. 625-631, July 2012.
  5. B He, W Fang, N Govindaraiu, Q Luo, and T Yang, "Mars: A MapReduce Framework on Graphics Processors", Proc. PACT'08, pp. 260-269, Oct. 2008.
  6. A Mooley, K Murthy, and H Singh, "DisMaRC: A Distributed Map Reduce Framework on CUDA", TechRep. Of The University of Texas at Austin, 2008.
  7. W Tom, "Hadoop: The Definitive Guide", Kindle Edition, O'relilly, pp. 27-40, 2011.
  8. J Owens, M Houston, D Luebke, S Green, J Stone, and J Phillips, "GPU Computing", Proc. IEEE, Vol. 96, No. 5, pp. 879-899, April 2008. https://doi.org/10.1109/JPROC.2008.917757
  9. Bongen Gu, "Hadoop Map/Reduce Implementation Way on GPU Cluster", Proceedings of 2012 KIIT Summer Conference, pp. 49-52, May 2012.