Enabling OpenCL support for GPGPU in Kernel‐based Virtual Machine. (22nd November 2012)
- Record Type:
- Journal Article
- Title:
- Enabling OpenCL support for GPGPU in Kernel‐based Virtual Machine. (22nd November 2012)
- Main Title:
- Enabling OpenCL support for GPGPU in Kernel‐based Virtual Machine
- Authors:
- Tien, Tsan‐Rong
You, Yi‐Ping - Abstract:
- <abstract abstract-type="main" id="spe2166-abs-0001"> <title>SUMMARY</title> <p id="spe2166-para-0001">The importance of heterogeneous multicore programming is increasing, and Open Computing Language (OpenCL) is an open industrial standard for parallel programming that provides a uniform programming model for programmers to write efficient, portable code for heterogeneous computing devices. However, OpenCL is not supported in the system virtualization environments that are often used to improve resource utilization. In this paper, we propose an OpenCL virtualization framework based on Kernel‐based Virtual Machine with API remoting to enable multiplexing of multiple guest virtual machines (guest VMs) over the underlying OpenCL resources. The framework comprises three major components: (i) an OpenCL library implementation in guest VMs for packing/unpacking OpenCL requests/responses; (ii) a virtual device, called <italic>virtio‐CL</italic>, that is responsible for the communication between guest VMs and the hypervisor (also called the VM monitor); and (iii) a thread, called <italic>CL thread</italic>, that is used for the OpenCL API invocation. Although the overhead of the proposed virtualization framework is directly affected by the amount of data to be transferred between the OpenCL host and devices because of the primitive nature of API remoting, experiments demonstrated that our virtualization framework has a small virtualization overhead (mean of 6.8%) for six common<abstract abstract-type="main" id="spe2166-abs-0001"> <title>SUMMARY</title> <p id="spe2166-para-0001">The importance of heterogeneous multicore programming is increasing, and Open Computing Language (OpenCL) is an open industrial standard for parallel programming that provides a uniform programming model for programmers to write efficient, portable code for heterogeneous computing devices. However, OpenCL is not supported in the system virtualization environments that are often used to improve resource utilization. In this paper, we propose an OpenCL virtualization framework based on Kernel‐based Virtual Machine with API remoting to enable multiplexing of multiple guest virtual machines (guest VMs) over the underlying OpenCL resources. The framework comprises three major components: (i) an OpenCL library implementation in guest VMs for packing/unpacking OpenCL requests/responses; (ii) a virtual device, called <italic>virtio‐CL</italic>, that is responsible for the communication between guest VMs and the hypervisor (also called the VM monitor); and (iii) a thread, called <italic>CL thread</italic>, that is used for the OpenCL API invocation. Although the overhead of the proposed virtualization framework is directly affected by the amount of data to be transferred between the OpenCL host and devices because of the primitive nature of API remoting, experiments demonstrated that our virtualization framework has a small virtualization overhead (mean of 6.8%) for six common device‐intensive OpenCL programs and performs well when the number of guest VMs involved in the system increases. These results indirectly infer that the framework allows for effective resource utilization of OpenCL devices.Copyright © 2012 John Wiley &amp; Sons, Ltd.</p> </abstract> … (more)
- Is Part Of:
- Software, practice & experience. Volume 44:Number 5(2014)
- Journal:
- Software, practice & experience
- Issue:
- Volume 44:Number 5(2014)
- Issue Display:
- Volume 44, Issue 5 (2014)
- Year:
- 2014
- Volume:
- 44
- Issue:
- 5
- Issue Sort Value:
- 2014-0044-0005-0000
- Page Start:
- 483
- Page End:
- 510
- Publication Date:
- 2012-11-22
- Subjects:
- Computer software -- Periodicals
Computer programming -- Periodicals
Computer programs -- Periodicals
005.3 - Journal URLs:
- http://onlinelibrary.wiley.com/ ↗
- DOI:
- 10.1002/spe.2166 ↗
- Languages:
- English
- ISSNs:
- 0038-0644
- Deposit Type:
- Legaldeposit
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library DSC - 8321.453000
British Library DSC - BLDSS-3PM
British Library STI - ELD Digital store - Ingest File:
- 3674.xml