Virtualizing and Scheduling FPGA Resources in Cloud Computing Datacenters
Cloud service providers consistently leverage their computing infrastructures by adding reconfigurable hardware platforms such as field-programmable gate arrays (FPGAs) to their existing infrastructures. Adding FPGAs to a cloud environment involves non-trivial challenges. The first challenge is virt...
Main Authors: | , , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
IEEE
2022-01-01
|
Series: | IEEE Access |
Subjects: | |
Online Access: | https://ieeexplore.ieee.org/document/9878317/ |
_version_ | 1828147602947833856 |
---|---|
author | Abid Farhan Raafat Aburukba Assim Sagahyroon Mohammed Elnawawy Khaled El-Fakih |
author_facet | Abid Farhan Raafat Aburukba Assim Sagahyroon Mohammed Elnawawy Khaled El-Fakih |
author_sort | Abid Farhan |
collection | DOAJ |
description | Cloud service providers consistently leverage their computing infrastructures by adding reconfigurable hardware platforms such as field-programmable gate arrays (FPGAs) to their existing infrastructures. Adding FPGAs to a cloud environment involves non-trivial challenges. The first challenge is virtualizing FPGAs as part of the cloud resources. As a standard virtualization framework is lacking, there is a need for an efficient framework for virtualizing FPGAs. Furthermore, FPGA resources are used in conjunction with central processing units (CPUs) and graphics processing units (GPUs) to accelerate the execution of tasks. Therefore, to gain the benefits of these powerful accelerating platforms, the second challenge is to optimize the allocation of tasks into the capable resources within a cloud data center. This work proposes an FPGA virtualization framework that abstracts the physical FPGAs into virtual pools of FPGA resources. The work further presents an integer linear programming (ILP) optimization model to minimize the makespan of tasks where FPGA resources are part of the cloud data center. Given the complex nature of the problem, a simulated annealing (SA) metaheuristic is developed to achieve gains in performance compared to the exact method and to scale up and handle many tasks and resources while providing near-optimal solutions. Experimental results show that SA has reduced the makespan of a large dataset with 1000 tasks and 100 resources by up to 30% when compared to first-come-first-served (FCFS) and shortest-deadline-first (SDF) algorithms. Lastly, to quantify the performance of FPGA-enabled cloud datacenters, the work extends the CloudSim simulator (an open-source cloud simulator) to enable FPGA as a resource in its environment. The proposed virtualization framework and the SA scheduler are integrated into the environment. Simulation results show that the execution time of tasks is reduced by up to 78% when FPGA accelerators are used. |
first_indexed | 2024-04-11T21:03:50Z |
format | Article |
id | doaj.art-45250edcbc2b4befa8784007e8ff974d |
institution | Directory Open Access Journal |
issn | 2169-3536 |
language | English |
last_indexed | 2024-04-11T21:03:50Z |
publishDate | 2022-01-01 |
publisher | IEEE |
record_format | Article |
series | IEEE Access |
spelling | doaj.art-45250edcbc2b4befa8784007e8ff974d2022-12-22T04:03:25ZengIEEEIEEE Access2169-35362022-01-0110969099692910.1109/ACCESS.2022.32048669878317Virtualizing and Scheduling FPGA Resources in Cloud Computing DatacentersAbid Farhan0Raafat Aburukba1https://orcid.org/0000-0003-2695-5836Assim Sagahyroon2https://orcid.org/0000-0001-7189-3940Mohammed Elnawawy3https://orcid.org/0000-0002-4367-8060Khaled El-Fakih4https://orcid.org/0000-0002-2343-2848Department of Computer Science and Engineering, American University of Sharjah, Sharjah, United Arab EmiratesDepartment of Computer Science and Engineering, American University of Sharjah, Sharjah, United Arab EmiratesDepartment of Computer Science and Engineering, American University of Sharjah, Sharjah, United Arab EmiratesDepartment of Computer Science and Engineering, American University of Sharjah, Sharjah, United Arab EmiratesDepartment of Computer Science and Engineering, American University of Sharjah, Sharjah, United Arab EmiratesCloud service providers consistently leverage their computing infrastructures by adding reconfigurable hardware platforms such as field-programmable gate arrays (FPGAs) to their existing infrastructures. Adding FPGAs to a cloud environment involves non-trivial challenges. The first challenge is virtualizing FPGAs as part of the cloud resources. As a standard virtualization framework is lacking, there is a need for an efficient framework for virtualizing FPGAs. Furthermore, FPGA resources are used in conjunction with central processing units (CPUs) and graphics processing units (GPUs) to accelerate the execution of tasks. Therefore, to gain the benefits of these powerful accelerating platforms, the second challenge is to optimize the allocation of tasks into the capable resources within a cloud data center. This work proposes an FPGA virtualization framework that abstracts the physical FPGAs into virtual pools of FPGA resources. The work further presents an integer linear programming (ILP) optimization model to minimize the makespan of tasks where FPGA resources are part of the cloud data center. Given the complex nature of the problem, a simulated annealing (SA) metaheuristic is developed to achieve gains in performance compared to the exact method and to scale up and handle many tasks and resources while providing near-optimal solutions. Experimental results show that SA has reduced the makespan of a large dataset with 1000 tasks and 100 resources by up to 30% when compared to first-come-first-served (FCFS) and shortest-deadline-first (SDF) algorithms. Lastly, to quantify the performance of FPGA-enabled cloud datacenters, the work extends the CloudSim simulator (an open-source cloud simulator) to enable FPGA as a resource in its environment. The proposed virtualization framework and the SA scheduler are integrated into the environment. Simulation results show that the execution time of tasks is reduced by up to 78% when FPGA accelerators are used.https://ieeexplore.ieee.org/document/9878317/FPGAcloud computingvirtualizationschedulingCloudSimsimulated annealing |
spellingShingle | Abid Farhan Raafat Aburukba Assim Sagahyroon Mohammed Elnawawy Khaled El-Fakih Virtualizing and Scheduling FPGA Resources in Cloud Computing Datacenters IEEE Access FPGA cloud computing virtualization scheduling CloudSim simulated annealing |
title | Virtualizing and Scheduling FPGA Resources in Cloud Computing Datacenters |
title_full | Virtualizing and Scheduling FPGA Resources in Cloud Computing Datacenters |
title_fullStr | Virtualizing and Scheduling FPGA Resources in Cloud Computing Datacenters |
title_full_unstemmed | Virtualizing and Scheduling FPGA Resources in Cloud Computing Datacenters |
title_short | Virtualizing and Scheduling FPGA Resources in Cloud Computing Datacenters |
title_sort | virtualizing and scheduling fpga resources in cloud computing datacenters |
topic | FPGA cloud computing virtualization scheduling CloudSim simulated annealing |
url | https://ieeexplore.ieee.org/document/9878317/ |
work_keys_str_mv | AT abidfarhan virtualizingandschedulingfpgaresourcesincloudcomputingdatacenters AT raafataburukba virtualizingandschedulingfpgaresourcesincloudcomputingdatacenters AT assimsagahyroon virtualizingandschedulingfpgaresourcesincloudcomputingdatacenters AT mohammedelnawawy virtualizingandschedulingfpgaresourcesincloudcomputingdatacenters AT khaledelfakih virtualizingandschedulingfpgaresourcesincloudcomputingdatacenters |