FPGA based system for the acceleration of Cloud Microservices
06 June 2018
Scalability, distributivity, interoperability, modularity introduced in cloud computing have deeply changed the legacy data center architecture, implementation and processing capabilities. The atomic network services offered by cloud architectures are called microservices. Unlike virtual machines, microservices can be implemented in the form of low resources footprint applications as containers (Docker, LXC etc.) or even smaller as unikernels (IncludeOS, ClickOS, Rumprun, HermitOS etc.). The need to efficiently offload the processing of computation-intensive applications has motivated the introduction of Field Programmable Gate Arrays (FPGA) boards in servers. FPGAs can nowadays be considered as cloud standard processing resources. However, in today cloud data centers, FPGAs cannot be accessed to run concurrent microservices. This severely limits the efficient deployment of microservices. This paper aims at describing the state of the art on cloud hardware processing based on FPGAs and their limitations. We also introduce an FPGA-based system for the concurrent acceleration of cloud-native microservices onto FPGAs.