Gator Reconfigurable Cloud Computing (GatorReCC)

Gator Reconfigurable Cloud Computing (GatorReCC)

Description

Cloud computing has become a major trend for delivering services via networks. One of the reasons for its success is that it allows privates and companies to access computing and storage resources on-demand without having to care about the management of the underlying infrastructure. Major IT and Web companies (Microsoft, Oracle, IBM, Amazon, Google, …) have all proposed cloud solutions (AWS, Google Compute Engine, ExaData, …). However, the architectures underneath those cloud services still rely on General Purpose Processors (GPP). Heterogeneous paradigms are well known to offer greater advantages compared to general-purpose computing such as performance improvement and power savings. Knowing that customizable hardware components such as FPGAs outperform GPP in several use cases, finding an efficient way to incorporate such computing resources into today’s and tomorrow’s clouds might open a new era for cloud computing. In addition, efficient providing FPGA resources as part of virtual instances in the cloud will foster innovation in several research domains such as deep learning, high-performance computing, hardware security and trust, etc. Therefore, the purpose of this work is to investigate the integration of FPGA devices into cloud infrastructures.

Contribution

Virtualization techniques can be categorized as software-based approaches and hardware-based ones. Emulation and paravirtualization fall into the software-based category. For the first one, the hypervisor emulates hardware devices (see Figure 1a). Virtual machines (VM) can then use native drivers, resulting in no modification of guest operating systems (GOS). The major drawback is the overhead of context switches between GOS and host operating systems (HOS). Paravirtualization (see Figure 1b) offers a more efficient scheme as a front-end driver in the VM is connected to a back-end driver in the host to remove context switches’ overhead. The two previous methods insert a hypervisor between VMs and the hardware, introducing penalties in VM I/O performance. Hardware-based virtualization techniques aim to mitigate that overhead. Direct I/O (see Figure 1c) gives VMs a direct access to physical hardware, resulting in improved performance compared to previously mentioned methods. Unfortunately, this approach does allow sharing physical devices among VMs, which is one of the most important requirement to virtualizing hardware in the cloud. Specifications like Single Root I/O Virtualization (SR-IOV) allow multiple VMs to access the same physical device (see Figure 1d). It features several Physical Functions (PF), each accessible through Virtual Functions (VF). Each VM can directly reach a VF to achieve bare-metal performance [2]. Though the latter offers some sharing capability, each VF can only be accessed by one VM, making this approach not scalable in a cloud-oriented deployment. We therefore need new architectures and protocols designed to efficiently leverage FPGA capabilities within cloud infrastructures.

Figure1. Virtualization Approaches

Publications

  1. Mandebi Mbongue, Joel, Sujan Kumar Saha, and Christophe Bobda. “Domain Isolation in FPGA-Accelerated Cloud and Data Center Applications.” In Proceedings of the 2021 on Great Lakes Symposium on VLSI, pp. 283-288. 2021.
  2. Mbongue, Joel Mandebi, Sujan Kumar Saha, and Christophe Bobda. “Performance Study of Multi-tenant Cloud FPGAs.” In 2021 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW), pp. 168-171. IEEE, 2021.
  3. J. M. Mbongue, A. Shuping, P. Bhowmik and C. Bobda, “Architecture Support for FPGA Multi-tenancy in the Cloud,” 2020 IEEE 31st International Conference on Application-specific Systems, Architectures and Processors (ASAP), Manchester, United Kingdom, pp. 125-132, doi: 10.1109/ASAP49362.2020.00030, 2020.
  4. Mbongue, Joel Mandebi, and Christophe Bobda. “Accommodating Multi-Tenant FPGAs in the Cloud.” In 2020 IEEE 28th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM), pp. 214-214. IEEE, 2020.
  5. Mbongue, Joel Mandebi, Danielle Tchuinkou Kwadjo, and Christophe Bobda. “Exploiting RapidWright in the Automatic Generation of Application-Specific FPGA Overlays.” https://arxiv.org/abs/2001.11886. arXiv, 2020.
  6. Mbongue, Joel Mandebi, Danielle Tchuinkou Kwadjo, and Christophe Bobda. “Automatic Generation of Application-Specific FPGA Overlays with RapidWright.” In 2019 International Conference on Field-Programmable Technology (ICFPT), pp. 303-306. IEEE, 2019.
  7. Kwadjo, Danielle Tchuinkou, Joel Mandebi Mbongue, and Christophe Bobda. “Automatic generation of application-specific FPGA overlays: work-in-progress.” In Proceedings of the International Conference on Compliers, Architectures and Synthesis for Embedded Systems Companion, p. 4. ACM, 2019.
  8. Bobda, Christophe, Harold Ishebabi, Philipp Mahr, Joel Mandebi Mbongue, and Sujan Kumar Saha. “MeXT: A Flow for Multiprocessor Exploration.” In 2019 IEEE High Performance Extreme Computing Conference (HPEC), pp. 1-7. IEEE, 2019.
  9. Bobda, Christophe, Taylor Whitaker, Joel Mandebi Mbongue, and Sujan Kumar Saha. “Synthesis of hardware sandboxes for trojan mitigation in systems on chip.” In 2019 IEEE High Performance Extreme Computing Conference (HPEC), pp. 1-6. IEEE, 2019.
  10. Pantho, Md Jubaer Hossain, Joel Mandebi Mbongue, Christophe Bobda, David Andrews, and Marjan Asadinia. “Enabling Transparent Acceleration of OpenCV Library Kernels on a Hybrid Memory Cube Computer.” In 2018 IEEE 26th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM), pp. 217-217. IEEE, 2018.
  11. Mbongue, Joel, Festus Hategekimana, Danielle Tchuinkou Kwadjo, David Andrews, and Christophe Bobda. “FPGAVirt: A Novel Virtualization Framework for FPGAs in the Cloud.” In 2018 IEEE 11th International Conference on Cloud Computing (CLOUD), pp. 862-865. IEEE, 2018.
  12. Hategekimana, Festus, Joel Mandebi Mbongue, Md Jubaer Hossain Pantho, and Christophe Bobda. “Secure Hardware Kernels Execution in CPU+ FPGA Heterogeneous Cloud.” In 2018 International Conference on Field-Programmable Technology (FPT), pp. 182-189. IEEE, 2018.
  13. Mbongue, Joel Mandebi, Festus Hategekimana, Danielle Tchuinkou Kwadjo, and Christophe Bobda. “FPGA Virtualization in Cloud-Based Infrastructures Over Virtio.” In 2018 IEEE 36th International Conference on Computer Design (ICCD), pp. 242-245. IEEE, 2018.
  14. Mandebi Mbongue, Joel, Danielle Tchuinkou Kwadjo, and Christophe Bobda. “FLexiTASK: A Flexible FPGA Overlay for Efficient Multitasking.” In Proceedings of the 2018 on Great Lakes Symposium on VLSI, pp. 483-486. ACM, 2018.
  15. Pantho, Md Jubaer Hossain, Joel Mandebi Mbongue, Christophe Bobda, and David Andrews. “Transparent Acceleration of Image Processing Kernels on FPGA-Attached Hybrid Memory Cube Computers.” In 2018 International Conference on Field-Programmable Technology (FPT), pp. 342-345. IEEE, 2018.
  16. Hategekimana, Festus, Joel Mandebi Mbongue, Md Jubaer Hossain Pantho, and Christophe Bobda. “Inheriting software security policies within hardware ip components.” In 2018 IEEE 26th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM), pp. 53-56. IEEE, 2018.

 

Future Work

  • Extend the virtualization environment to handle to cloud management software such as OpenStack.
  • Study security threats arising from sharing FPGA resources between multiple tenants.

Contact

Acknowledgment

This work is partially funded by the National Science Foundation (NSF) under Grant CNS 2007320, and the Office of Naval Research (ONR) under the Grant CCN 0402-17643-21-0000.

Create Your VM

Coming soon …