DOI QR코드

DOI QR Code

An Analytical Model for Performance Prediction of AES on GPU Architecture

GPU 아키텍처의 AES 암호화 성능 예측 분석 모델

  • Kim, Kyuwoon (LG Electronics) ;
  • Kim, Hyunwoo (Dept. of Electronics and Computer Engineering, Hanyang University) ;
  • Kim, Huijeong (Dept. of Electronics and Computer Engineering, Hanyang University) ;
  • Huh, Taeyoung (Dept. of Electronics and Computer Engineering, Hanyang University) ;
  • Jung, Sanghyuk (Dept. of Electronics and Computer Engineering, Hanyang University) ;
  • Song, Yong Ho (Dept. of Electronic Engineering, Hanyang University)
  • 김규운 (LG전자) ;
  • 김현우 (한양대학교 전자컴퓨터통신공학과) ;
  • 김희정 (한양대학교 전자컴퓨터통신공학과) ;
  • 허태영 (한양대학교 전자컴퓨터통신공학과) ;
  • 정상혁 (한양대학교 전자컴퓨터통신공학과) ;
  • 송용호 (한양대학교 융합전자공학부)
  • Received : 2012.12.27
  • Published : 2013.04.25

Abstract

The graphic processor unit (GPU) has been developed to process not only graphic data but also general system data. It shows a better performance than CPU in algorithm for 3D graphics and parallel program. In order to execute algorithm for CPU on GPU, we should understand about GPU architectures and rewrite program considering parallel processing capability and new memory model of GPU. For this reasons, a performance prediction model for the algorithm and its predicted performance through GPU system are required. These can predict problems in GPU application development or construct a performance evaluation standard for GPU. In this paper, we applied the AES encryption algorithms on our performance model and accomplished performance prediction with high accuracy under a heavy workload.

컴퓨터의 그래픽 연산장치인 GPU는 그래픽 데이터의 연산뿐만 아니라 일반시스템 데이터를 처리할 수 있도록 발전되었으며, 3D 그래픽 관련 알고리즘이나 병렬 실행이 가능한 코드에 대해서는 CPU 보다 우수한 성능을 보여주고 있다. CPU 기반으로 제작된 일반적인 알고리즘을 GPU에서 실행하기 위해서는, GPU 시스템의 아키텍처를 이해하고 병렬처리 능력과 새로운 메모리 구조를 고려하여 코드를 재작성하여야 한다. 이를 위해서는 알고리즘을 성능 예측 모델에 적용하여 GPU 시스템에서 예상되는 성능 예측이 필수적이다. 이를 통해 GPU 기반 어플리케이션 개발에서 발생할 수 있는 문제점들을 사전에 예측하고, 성능에 대한 평가 지표를 구성할 수 있다. 본 논문에서는 AES 암호화 알고리즘에 성능예측 모델을 적용하여 작업량이 많은 조건하에서 높은 정확도로 성능 예측을 수행하였다.

Keywords

References

  1. Lars Nyland, Mark Harris, and Jan PrinsFast, "N-Body Simulation with CUDA", GPU gems 3, pp 677-695, 2007.
  2. Khajeh-Saeed, A, "Computational Fluid Dynamics Simulations Using Many Graphics Processors", Computing in Science & Engineering, Vol 14, Issue 3, pp 10-19, May 2012.
  3. John Nickolls, Ian Buck, Michael Garland and Kevin Skadron , "Scalable Parallel Programming with CUDA," Queue - GPU Computing, Volume 6, Issue 2, pp 40-53, Mar 2008.
  4. 김규운, "GPU 아키텍처의 병렬 어플리케이션 성능 예측을 위한 분석 모델", 한양대학교 대학원, 2011년 2월
  5. Sunpyo Hong, and Hyesoon Kim, "An integrated GPU power and performance model," in Proc. International Symposium on Computer Architecture, Vol. 38, Issue 3, June 2010.
  6. Sunpyo Hong, and Hyesoon Kim, "An analytical model for a GPU architecture with memory-level and thread-level parallelism awareness," in Proc. International Symposium on Computer Architecuter, Vol. 37, Issue 3, June 2009.
  7. Yao Zhang, and John D. Owens, "A Quantitative Performance Analysis Model for GPU Architectures," High Performance Computer Architecture, 2011 IEEE 17th International Symposium on, pp 382-393, Feb 2011.
  8. Manavski. S.A., "CUDA Compatible GPU as an Efficient Hardware Accelerator for AES Cryptography," in Proc. IEEE Conf. on Signal Processing and Communications, pp. 65-68, Dubai, United Arab Emirates, Nov 2007.
  9. 염용진, 조용국, "GPU용 연산 라이브러리 CUDA를 이용한 블록암호 고속 구현", 정보보호학회논문지 제18권 제3호, pp 23-32, 2008년 6월
  10. David B. Kirk and Wen-Mei W. Hwu, "Programming Massively Parallel Processors: A Hands-on Approach," Morgan Kaufmann Publishers, 2010.
  11. Leskela, J., Nikula, J. and Salmela, M. "OpenCL embedded profile prototype in mobile device," in Proc. of IEEE workshop on Signal Processing Systems, pp. 279-284, Tampere, Finland, Oct 2009.
  12. John Owens, "GPU architecture overview," in Proc. of ACM SIGGRAPH 2007 course 24, Article No. 2, San Diego, CA, USA, Aug 2007.
  13. Pawan Harish and P. J. Narayanan, "Accelerating Large Graph Algorithms on the GPU Using CUDA" Lecture Notes in Computer Science, High Performace Computing, Vol 4873, pp. 197-208, 2007.
  14. "CUDA C Programming Guide", Cuda Toolkit v5.0, NVIDIA, 2012.
  15. Joan Daemen and Vincent Rijmen, "The Design of Rijndael", Springer, 2002.