Efficient Workload Distribution of Photomosaic Using OpenCL into a Heterogeneous Computing Environment

이기종 컴퓨팅 환경에서 OpenCL을 사용한 포토모자이크 응용의 효율적인 작업부하 분배

  • 김희곤 (고려대학교 컴퓨터정보학과) ;
  • 사재원 (고려대학교 컴퓨터정보학과) ;
  • 최동휘 (고려대학교 컴퓨터정보학과) ;
  • 김혜련 (고려대학교 컴퓨터정보학과) ;
  • 이성주 (고려대학교 컴퓨터정보학과) ;
  • 정용화 (고려대학교 컴퓨터정보학과) ;
  • 박대희 (고려대학교 컴퓨터정보학과)
  • Received : 2015.04.28
  • Accepted : 2015.06.26
  • Published : 2015.08.31


Recently, parallel processing methods with accelerator have been introduced into a high performance computing and a mobile computing. The photomosaic application can be parallelized by using inherent data parallelism and accelerator. In this paper, we propose a way to distribute the workload of the photomosaic application into a CPU and GPU heterogeneous computing environment. That is, the photomosaic application is parallelized using both CPU and GPU resource with the asynchronous mode of OpenCL, and then the optimal workload distribution rate is estimated by measuring the execution time with CPU-only and GPU-only distribution rates. The proposed approach is simple but very effective, and can be applied to parallelize other applications on a CPU and GPU heterogeneous computing environment. Based on the experimental results, we confirm that the performance is improved by 141% into a heterogeneous computing environment with the optimal workload distribution compared with using GPU-only method.


  1. C. Chun, S. Hong, J. Bae, and M. Lee, "High Performance Computing Using GPU's: with Application to Financial Derivatives Modeling," The Journal of Korean Institute of Next Generation Computing, Vol.5, No.1, pp.30-40, 2009.
  2. J. Nickolls, I. Buck, M. Garland, and K. Skadron, "Scalable Parallel Programming with CUDA," ACM Queue, Vol.6, No.2, pp.40-53, 2008.
  3. I. Kim, K. Chang, C. Lee, D. Oh, and W. Ro, "An Efficient H.264 Encoding Process using Multiple GPUs," in Proceedings of the IEEK Summer Conference, Jeju, pp.739-740, 2012.
  4. J. Kang, D. Lee, I. Kang, and H. Yu, "A Study on a Declines in Performance by Memory Copy in CUDA," in Proceedings of the 40th conference of the KIPS, Jeju, pp.135-138, 2013.
  5. J. Kim, S. Ko, and N. Park, "Implementation of High-Throughput AES Algorithm using CUDA," in Proceedings of the 2014 Spring Conference of the KIPS, Suwon, pp.119-120, 2014.
  6. Y. Jeong, N. Tran, and M. Lee, "Parallelization and Optimization of Boyer-Moore Algorithm on GPU," in Proceedings of the KCC, Busan, pp.54-56, 2014.
  7. J. Stone, D Gohara, and G Shi, "OpenCL: A Parallel Programming Standard for Heterogeneous Computing Systems," Computing in Science and Engineering, Vol.12, No.3, pp.66-73, 2010.
  8. Y. Yuan, Z. He, Z. Gong, and W. Qiu, "Acceleration of AES Encryption with OpenCL," in Proceedings of The 9th Asia JCIS, Wuhan, pp.64-70, 2014.
  9. M. Bach, V. Lindenstruth, O. Philipsen, and C. Pinke, "Lattice QCD based on OpenCL," Computer Physics Communications, Vol.184, No.9, pp.2042-2052, 2013.
  10. V. Demchik and N. Kolomoyets, "QCDGPU: open-source package for Monte Carlo lattice simulations on OpenCLcompatible multi-GPU systems," in Proceedings of The 3rd HPC-UA, Kyiv, pp.92-99, 2013.
  11. R. Silvers and M. Hawley, "Photomosaics," New York: Holt Paperbacks, 1997.
  12. D. Kang and K. Yoon, "Photomosaic using a programmable GPU," Journal of the Korea Computer Graphics Society, Vol.15, No.1, pp.17-25, 2008.
  13. J. Yang, C. Joo, and K. Oh, "Photo Mosaics using Quad-tree structure on GPU," Journal of the Korea Computer Graphics Society, Vol.17, No.1, pp.25-31, 2011.