DOI QR코드

DOI QR Code

Direct Pass-Through based GPU Virtualization for Biologic Applications

바이오 응용을 위한 직접 통로 기반의 GPU 가상화

  • 최동훈 (한국과학기술정보연구원 소프트웨어센터) ;
  • 조희승 (전북대학교 IT정보공학과) ;
  • 이명호 (명지대학교 컴퓨터공학과)
  • Received : 2013.01.08
  • Accepted : 2013.01.22
  • Published : 2013.02.28

Abstract

The current GPU virtualization techniques incur large overheads when executing application programs mainly due to the fine-grain time-sharing scheduling of the GPU among multiple Virtual Machines (VMs). Besides, the current techniques lack of portability, because they include the APIs for the GPU computations in the VM monitor. In this paper, we propose a low overhead and high performance GPU virtualization approach on a heterogeneous HPC system based on the open-source Xen. Our proposed techniques are tailored to the bio applications. In our virtualization framework, we allow a VM to solely occupy a GPU once the VM is assigned a GPU instead of relying on the time-sharing the GPU. This improves the performance of the applications and the utilization of the GPUs. Our techniques also allow a direct pass-through to the GPU by using the IOMMU virtualization features embedded in the hardware for the high portability. Experimental studies using microbiology genome analysis applications show that our proposed techniques based on the direct pass-through significantly reduce the overheads compared with the previous Domain0 based approaches. Furthermore, our approach closely matches the performance for the applications to the bare machine or rather improves the performance.

현재 개발된 GPU 가상화 기술은 모두 미세한 시분할 기법에 의한 스케줄링을 사용하기 때문에 어플리케이션 실행을 위한 오버헤드를 필요 이상으로 유발한다. 또한 이들은 가상 머신 모니터에 GPU 컴퓨팅 API를 포함하고 있어서, 가상 머신 모니터의 이식성이 약하다. 본 논문에서는 이질적 컴퓨팅 시스템에서 바이오 어플리케이션에 최적화된 GPU 가상화 기술을 제안하며, 공개 소스 Xen을 사용하여 개발하였다. 우리가 제안하는 방법은 가상 머신 간의 GPU 공유를 시분할에 의존하지 않는다. 대신에 하나의 가상 머신이 GPU를 할당 받으면 그 가상 머신이 어플리케이션을 종료할 때까지 GPU를 사용하도록 허용한다. 이렇게 하여 바이오 어플리케이션의 성능을 향상시키고 GPU의 활용률을 높인다. GPU 가상화의 이식성을 높이기 위해 하드웨어가 지원하는 IOMMU 가상화를 이용하여 GPU에 대한 직접 접근 통로를 제공한다. 미생물 유전체 분석 어플리케이션을 대상으로 성능을 분석한 결과, 본 연구에서 제안하는 직접 통로 방식에 의한 GPU 가상화는 Domain0를 통한 접근에 비해 오버헤드가 적었다. 또한 직접 접근 방식에 의한 가상 머신의 GPU 접근은, 비가상화된 머신과 거의 성능의 차이가 없었다.

Keywords

References

  1. P. D. Vouzis and N. V. Sahinidis, "GPU-BLAST: using graphics processors to accelerate protein sequence alignment," Bioinformatics, Vol.27, No.2, 2011, pp.182-188. https://doi.org/10.1093/bioinformatics/btq644
  2. C-M Liu, T. Wong, E. Wu, R. Luo, S-M Yiu, Y. Li, B. Wang, C. Yu, X. Chu, K. Zhao, R. Li, and T-W Lam, "SOAP3: Ultra-fast GPU-based parallel alignment tool for short reads," Bioinformatics, 2012.
  3. O. Harrison and J. Waldron, "Practical symmetric key cryptography on modern graphics hardware," USENIX Security Symposium 2008.
  4. S. Manavski, "CUDA compatible GPU as an effeicient hardware accelerator for AES cryptography," IEEE International Conference on Signal Processing and Communication 2007.
  5. E. W. Pugh, L.R. Johnson, J. H. Palmer., IBM's 360 and early 370 systems, MIT Press, ISBN 0-262-16123-0.
  6. GPU energy efficiency. http://www.nvidia.com/object/gcrenergy-efficiency.html
  7. Tianhe-1. http://www.top500.org/system/176929
  8. M. Lee, H. Jo, D. Choi, "Towards High Performance and Usability Programming Methodology for Heterogeneous HPC Architectures," International Journal of Advancements in Computing Technology, Oct., 2012.
  9. Tesla. http://www.nvidia.com/object/personal-supercomputing.html
  10. Kefler. http://www.nvidia.com/object/nvidia-kepler.html
  11. H. Lee, Y. Yang, H. Chae, S. Nam, D. Choi, P. Tangchaisin, C. Herath, S. Marru, K.P. Nephew, and S. Kim, "BioVLAB-MMIA: A Cloud Environment for microRNA and mRNA Integrated Analysis (MMIA) on Amazon EC2," IEEE Transactions on NanoBioscience, Vol.11, Issue3, Sep., 2012, pp.266-272. https://doi.org/10.1109/TNB.2012.2212030
  12. Tsubame. http://www.engadget.com/2011/11/23/nvidiastesla-gpu-powers-tsubame-2-0-to-green-supercomputersup/
  13. G. Giunta, R. Montella, G. Agrillo, and G. Coviello, "A gpgpu transparent virtualization component for high performance computing clouds", Euro-Par 2010 - Parallel Processing, Vol.6271, chap. 37, pp.379-391, 2010.
  14. V. Gupta, A. Gavrilovska, K. Schwan, H. Kharche, N. Tolia, V. Talwar, and P. Ranganathan, "GViM: GPU-accelerated virtual machines, Proceedings of the 3rd ACM Workshop on System-level Virtualization for High Performance Computing", pp.17-24, March 31-31, 2009.
  15. L. Shi, H. Chen, and J. Sun, "vCUDA: GPU accelerated high performance computing in virtual machines", IEEE International Symposium on Parallel & Distributed Processing (IPDPS'09), pp.1-11, 2009.
  16. CUDA toolkit. https://developer.nvidia.com/cuda-toolkit
  17. OpenCL. http://www.khronos.org/opencl/
  18. P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neugebauer, I. Pratt, and A. Warfield, "Xen and the art of virtualization," Symposium on Operating Systems Principles (SOSP), 2003.
  19. IOMMU. http://en.wikipedia.org/wiki/IOMMU
  20. Graphics Processing Unit. http://wikipedia.org
  21. GPU 병렬 컴퓨팅 기술을 이용한 개인용 수퍼 컴퓨터 현황과 전망. 이주석, 류현곤. 전자공학회지, Vol.36, No.5, pp.18-27.
  22. VMware Roadshow 2007 Seoul. http://vmware.eventmicrosite. com/kr_main.html.
  23. VMWare. http://www.vmware.com.
  24. VirtualPC. http://www.microsoft.com/windows/products/winfamily/virtualpc/default.mspx.
  25. Parallels. http://www.parallels.com.
  26. VirtualBox. http://www.virtualbox.org.
  27. Intel virtualization. http://www.intel.com/content/www/us/en/virtualization/intel-virtualization-transforms-it.html
  28. AMD virtualization. http://sites.amd.com/us/business/itsolutions/ virtualization/Pages/virtualization.aspx
  29. BarraCUDA. http://www.many-core.group.cam.ac.uk/projects/lam.shtml