GPGPU Task Scheduling Technique for Reducing the Performance Deviation of Multiple GPGPU Tasks in RPC-Based GPU Virtualization Environments
In remote procedure call (RPC)-based graphic processing unit (GPU) virtualization environments, GPU tasks requested by multiple-user virtual machines (VMs) are delivered to the VM owning the GPU and are processed in a multi-process form. However, because the thread executing the computing on general...
Main Authors: | , |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2021-03-01
|
Series: | Symmetry |
Subjects: | |
Online Access: | https://www.mdpi.com/2073-8994/13/3/508 |
_version_ | 1797540640078168064 |
---|---|
author | Jihun Kang Heonchang Yu |
author_facet | Jihun Kang Heonchang Yu |
author_sort | Jihun Kang |
collection | DOAJ |
description | In remote procedure call (RPC)-based graphic processing unit (GPU) virtualization environments, GPU tasks requested by multiple-user virtual machines (VMs) are delivered to the VM owning the GPU and are processed in a multi-process form. However, because the thread executing the computing on general GPUs cannot arbitrarily stop the task or trigger context switching, GPU monopoly may be prolonged owing to a long-running general-purpose computing on graphics processing unit (GPGPU) task. Furthermore, when scheduling tasks on the GPU, the time for which each user VM uses the GPU is not considered. Thus, in cloud environments that must provide fair use of computing resources, equal use of GPUs between each user VM cannot be guaranteed. We propose a GPGPU task scheduling scheme based on thread division processing that supports GPU use evenly by multiple VMs that process GPGPU tasks in an RPC-based GPU virtualization environment. Our method divides the threads of the GPGPU task into several groups and controls the execution time of each thread group to prevent a specific GPGPU task from a long time monopolizing the GPU. The efficiency of the proposed technique is verified through an experiment in an environment where multiple VMs simultaneously perform GPGPU tasks. |
first_indexed | 2024-03-10T13:04:02Z |
format | Article |
id | doaj.art-9c61475c4996498b92f7a1e58b7b81f7 |
institution | Directory Open Access Journal |
issn | 2073-8994 |
language | English |
last_indexed | 2024-03-10T13:04:02Z |
publishDate | 2021-03-01 |
publisher | MDPI AG |
record_format | Article |
series | Symmetry |
spelling | doaj.art-9c61475c4996498b92f7a1e58b7b81f72023-11-21T11:17:14ZengMDPI AGSymmetry2073-89942021-03-0113350810.3390/sym13030508GPGPU Task Scheduling Technique for Reducing the Performance Deviation of Multiple GPGPU Tasks in RPC-Based GPU Virtualization EnvironmentsJihun Kang0Heonchang Yu1Department of Computer Science and Engineering, Korea University, Seoul 02841, KoreaDepartment of Computer Science and Engineering, Korea University, Seoul 02841, KoreaIn remote procedure call (RPC)-based graphic processing unit (GPU) virtualization environments, GPU tasks requested by multiple-user virtual machines (VMs) are delivered to the VM owning the GPU and are processed in a multi-process form. However, because the thread executing the computing on general GPUs cannot arbitrarily stop the task or trigger context switching, GPU monopoly may be prolonged owing to a long-running general-purpose computing on graphics processing unit (GPGPU) task. Furthermore, when scheduling tasks on the GPU, the time for which each user VM uses the GPU is not considered. Thus, in cloud environments that must provide fair use of computing resources, equal use of GPUs between each user VM cannot be guaranteed. We propose a GPGPU task scheduling scheme based on thread division processing that supports GPU use evenly by multiple VMs that process GPGPU tasks in an RPC-based GPU virtualization environment. Our method divides the threads of the GPGPU task into several groups and controls the execution time of each thread group to prevent a specific GPGPU task from a long time monopolizing the GPU. The efficiency of the proposed technique is verified through an experiment in an environment where multiple VMs simultaneously perform GPGPU tasks.https://www.mdpi.com/2073-8994/13/3/508HPC cloudGPGPU computingGPU virtualizationGPU sharing |
spellingShingle | Jihun Kang Heonchang Yu GPGPU Task Scheduling Technique for Reducing the Performance Deviation of Multiple GPGPU Tasks in RPC-Based GPU Virtualization Environments Symmetry HPC cloud GPGPU computing GPU virtualization GPU sharing |
title | GPGPU Task Scheduling Technique for Reducing the Performance Deviation of Multiple GPGPU Tasks in RPC-Based GPU Virtualization Environments |
title_full | GPGPU Task Scheduling Technique for Reducing the Performance Deviation of Multiple GPGPU Tasks in RPC-Based GPU Virtualization Environments |
title_fullStr | GPGPU Task Scheduling Technique for Reducing the Performance Deviation of Multiple GPGPU Tasks in RPC-Based GPU Virtualization Environments |
title_full_unstemmed | GPGPU Task Scheduling Technique for Reducing the Performance Deviation of Multiple GPGPU Tasks in RPC-Based GPU Virtualization Environments |
title_short | GPGPU Task Scheduling Technique for Reducing the Performance Deviation of Multiple GPGPU Tasks in RPC-Based GPU Virtualization Environments |
title_sort | gpgpu task scheduling technique for reducing the performance deviation of multiple gpgpu tasks in rpc based gpu virtualization environments |
topic | HPC cloud GPGPU computing GPU virtualization GPU sharing |
url | https://www.mdpi.com/2073-8994/13/3/508 |
work_keys_str_mv | AT jihunkang gpgputaskschedulingtechniqueforreducingtheperformancedeviationofmultiplegpgputasksinrpcbasedgpuvirtualizationenvironments AT heonchangyu gpgputaskschedulingtechniqueforreducingtheperformancedeviationofmultiplegpgputasksinrpcbasedgpuvirtualizationenvironments |