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...

Full description

Bibliographic Details
Main Authors: Jihun Kang, Heonchang Yu
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