Loading...

Dynamic FPGA-accelerator sharing among concurrently running virtual machines

Nasiri, H ; Sharif University of Technology

581 Viewed
  1. Type of Document: Article
  2. DOI: 10.1109/EWDTS.2016.7807639
  3. Abstract:
  4. Using an FPGA as a hardware accelerator has been prevalent, to speed up compute intensive workloads. However, employing an accelerator in virtualized environment enhances complexity, because accessing the accelerator from virtual machines has significant overhead and sharing it needs some considerations. We have implemented adequate infrastructure to share an FPGA-based accelerator between multiple virtual machines with negligible access overhead which dynamically implements virtual machines' accelerators. In our architecture each user process from a virtual machine can directly access the FPGA over PCIe link and reconfigure its accelerator in the specified part of FPGA at run-time. The results of executing two different applications in two separated virtual machines using our shared accelerator show reducing the execution time of both applications and increasing performance of the entire system in practice. In this evaluation the overall speedup of our method was 6.3x while the best speedup of dedicated accelerator scenarios was 3.4x. © 2016 IEEE
  5. Keywords:
  6. Field programmable gate arrays (FPGA) ; Java programming language ; Network security ; Virtual machine ; Virtual reality ; Entire system ; Fpga accelerators ; Hardware accelerators ; Runtimes ; Speed up ; Virtualized environment ; Acceleration
  7. Source: Proceedings of 2016 IEEE East-West Design and Test Symposium, EWDTS 2016, 14 October 2016 through 17 October 2016 ; 2017 ; 9781509006939 (ISBN)
  8. URL: https://ieeexplore.ieee.org/document/7807639