Abstract

Field-programmable gate arrays (FPGAs) have largely been used in communication and high-performance computing and given the recent advances in big data and emerging trends in cloud computing (e.g., serverless [18]), FPGAs are increasingly being introduced into these domains (e.g., Microsoft’s datacenters [6] and Amazon Web Services [10]). To address these domains’ processing needs, recent research has focused on using FPGAs to accelerate workloads, ranging from analytics and machine learning to databases and network function virtualization. In this paper, we present an ongoing effort to realize a high-performance FPGA-as-a-microservice (FaaM) architecture for the cloud. We discuss some of the technical challenges and propose several solutions for efficiently integrating FPGAs into virtualized environments. Our case study deploying a multithreaded, multi-user compression as a microservice using the FaaM architecture indicate that microservices-based FPGA acceleration can sustain high-performance compared to straightforward implementation with minimal to no communication overhead despite the hardware abstraction.

Highlights

  • With the rapidly increasing demand for cloud computing, there is a corresponding increased interest in using field-programmable gate arrays (FPGAs) to accelerate datacenter workloads

  • Given an FPGA’s computational flexibility, FPGA-based accelerators have been generally applied to applications with intensive, high-performance computing (HPC) demands, achieving orders of magnitude performance improvement and power efficiency as compared to functionally equivalent central processing unit (CPU)- based implementations [4][5][6]

  • While the FPGA Java virtual machine (JVM) and task scheduler both run as a single JVM process, the web service runs as a separate process, allowing for a different type of application-facing web service to be integrated with the runtime system

Read more

Summary

Introduction

With the rapidly increasing demand for cloud computing, there is a corresponding increased interest in using field-programmable gate arrays (FPGAs) to accelerate datacenter workloads. The economics of scaling new, non-homogenous datacenter architectures combining traditional CPUs with FPGAs remains a significant resource management challenge, which includes deployment, maintainability, and composability across an entire datacenter infrastructure. Addressing these challenges is critical for minimizing operational costs and service downtime in large-scale, production environments. In spite of this management complexity, the emergence of hyperscale datacenters (i.e., datacenters with high scale-out capabilities) presents an opportunity for accelerator systems that tightly integrate CPUs and FPGAs (e.g., Xeon+FPGA server platform [7]). For ease of use, this pool must appear as an individual datacenter resource that is accessible to multiple, simultaneous cloud users

Related Work
FPGA Microservices
FPGA Integration Challenges and Solutions
Findings
Discussions and Conclusions
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.