|
|
FPGA sharing in the cloud: a comprehensive analysis |
Jinyang GUO1, Lu ZHANG1, José ROMERO HUNG2, Chao LI1( ), Jieru ZHAO1, Minyi GUO1 |
1. Department of Computer Science and Engineering, Shanghai Jiao Tong University, Shanghai 200240, China 2. Department of Micro/Nano Electronics, Shanghai Jiao Tong University, Shanghai 200240, China |
|
|
Abstract Cloud vendors are actively adopting FPGAs into their infrastructures for enhancing performance and efficiency. As cloud services continue to evolve, FPGA (field programmable gate array) systems would play an even important role in the future. In this context, FPGA sharing in multi-tenancy scenarios is crucial for the wide adoption of FPGA in the cloud. Recently, many works have been done towards effective FPGA sharing at different layers of the cloud computing stack. In this work, we provide a comprehensive survey of recent works on FPGA sharing. We examine prior art from different aspects and encapsulate relevant proposals on a few key topics. On the one hand, we discuss representative papers on FPGA resource sharing schemes; on the other hand, we also summarize important SW/HW techniques that support effective sharing. Importantly, we further analyze the system design cost behind FPGA sharing. Finally, based on our survey, we identify key opportunities and challenges of FPGA sharing in future cloud scenarios.
|
Keywords
cloud FPGA
FPGA sharing
efficiency
design cost
|
Corresponding Author(s):
Chao LI
|
Just Accepted Date: 26 July 2022
Issue Date: 15 December 2022
|
|
1 |
Cloud Amazon . Amazon EC2 F1 Instances. See Aws.amazon.com/cn/ec2/instance-types/f1/ website, 2016
|
2 |
Cloud Huawei . FPGA Accelerated Cloud Server. See Huaweicloud.com/product/facs.html website, 2017
|
3 |
Cloud Alibaba . FPGA Cloud Server. See Aliyun.com/product/ecs/fpga website, 2017
|
4 |
AI Cloud Baidu . FPGA Cloud Server. See Cloud.baidu.com/product/fpga.html website, 2017
|
5 |
Cloud Tencent . FPGA Cloud Server. See Cloud.tencent.com/product/fpga website, 2018
|
6 |
E H C, Tourad M Eleuldj . Survey of deep learning neural networks implementation on FPGAs. In: Proceedings of the 5th International Conference on Cloud Computing and Artificial Intelligence: Technologies and Applications. 2020, 1−8
|
7 |
C, Wu V, Fresse B, Suffran H Konik . Accelerating DNNs from local to virtualized FPGA in the cloud: a survey of trends. Journal of Systems Architecture, 2021, 119: 102257
|
8 |
H, Shahzad A, Sanaullah M C Herbordt . Survey and future trends for FPGA cloud architectures. In: Proceedings of 2021 IEEE High Performance Extreme Computing Conference. 2021, 1−10
|
9 |
M H, Quraishi E B, Tavakoli F Ren . A survey of system architectures and techniques for FPGA virtualization. IEEE Transactions on Parallel and Distributed Systems, 2021, 32( 9): 2216–2230
|
10 |
S, Trimberger S McNeil . Security of FPGAs in data centers. In: Proceedings of IEEE the 2nd International Verification and Security Workshop. 2017, 117−122
|
11 |
F, Turan I Verbauwhede . Trust in FPGA-accelerated cloud computing. ACM Computing Surveys, 2021, 53( 6): 128
|
12 |
C, Jin V, Gohil R, Karri J Rajendran . Security of cloud FPGAs: a survey. 2020, arXiv preprint arXiv: 2005.04867
|
13 |
G, Dessouky A R, Sadeghi S Zeitouni . SoK: Secure FPGA multi-tenancy in the cloud: challenges and opportunities. In: Proceedings of 2021 IEEE European Symposium on Security and Privacy. 2021, 487−506
|
14 |
F, Chen Y, Shan Y, Zhang Y, Wang H, Franke X, Chang K Wang . Enabling FPGAs in the cloud. In: Proceedings of the 11th ACM Conference on Computing Frontiers. 2014, 3
|
15 |
A, Putnam A M, Caulfield E S, Chung D, Chiou K, Constantinides J, Demme H, Esmaeilzadeh J, Fowers G P, Gopal J, Gray M, Haselman S, Hauck S, Heil A, Hormati J Y, Kim S, Lanka J, Larus E, Peterson S, Pope A, Smith J, Thong P Y, Xiao D Burger . A reconfigurable fabric for accelerating large-scale datacenter services. In: Proceedings of 2014 ACM/IEEE 41st International Symposium on Computer Architecture. 2014, 13−24
|
16 |
Intel. Hardware accelerator research program. See Communityintel.com/t5/Software-Tuning-Performance/HARP-Hardware-Accelerator-Research-Program/m-p/1126570 website, 2018
|
17 |
A, Iordache G, Pierre P, Sanders F. Coutinho J G, De M Stillwell . High performance in the cloud with FPGA groups. In: Proceedings of the 9th IEEE/ACM International Conference on Utility and Cloud Computing. 2016, 1−10
|
18 |
Y, Zha J Li . Virtualizing FPGAs in the cloud. In: Proceedings of the 25th International Conference on Architectural Support for Programming Languages and Operating Systems. 2020, 845−858
|
19 |
S, Byma J G, Steffan H, Bannazadeh A, Leon-Garcia P Chow . FPGAS in the cloud: booting virtualized hardware accelerators with OpenStack. In: Proceedings of the 22nd IEEE Annual International Symposium on Field-Programmable Custom Computing Machines. 2014, 109−116
|
20 |
C, Lavin A Kaviani . RapidWright: enabling custom crafted implementations for FPGAs. In: Proceedings of the 26th IEEE Annual International Symposium on Field-Programmable Custom Computing Machines. 2018, 133−140
|
21 |
Z, Zhu A X, Liu F, Zhang F Chen . FPGA resource pooling in cloud computing. IEEE Transactions on Cloud Computing, 2021, 9( 2): 610–626
|
22 |
L, Guo Y, Chi J, Wang J, Lau W, Qiao E, Ustun Z, Zhang J Cong . AutoBridge: coupling coarse-grained floorplanning and pipelining for high-frequency HLS design on multi-die FPGAs. In: Proceedings of the 2021 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays. 2021, 81−92
|
23 |
M, Moghaddamfar C, Färber W, Lehner N, May A Kumar . Resource-efficient database query processing on FPGAs. In: Proceedings of the 17th International Workshop on Data Management on New Hardware. 2021, 4
|
24 |
X, Chen H, Tan Y, Chen B, He W F, Wong D Chen . ThunderGP: HLS-based graph processing framework on FPGAs. In: Proceedings of 2021 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays. 2021, 69−80
|
25 |
C, Liu Z, Shao K, Li M, Wu J, Chen R, Li X, Liao H Jin . ScalaBFS: a scalable BFS accelerator on FPGA-HBM platform. In: Proceedings of 2021 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays. 2021, 147
|
26 |
Y W, Wu Q G, Wang L, Zheng X F, Liao H, Jin W B, Jiang R, Zheng K Hu . FDGLib: a communication library for efficient large-scale graph processing in FPGA-accelerated data centers. Journal of Computer Science and Technology, 2021, 36( 5): 1051–1070
|
27 |
M, Bacis R, Brondolin M D Santambrogio . BlastFunction: an FPGA-as-a-service system for accelerated serverless computing. In: Proceedings of the 23rd Conference on Design, Automation and Test in Europe. 2020, 852−857
|
28 |
B, Hong H Y, Kim M, Kim T, Suh L, Xu W Shi . FASTEN: an FPGA-based secure system for big data processing. IEEE Design & Test, 2018, 35( 1): 30–38
|
29 |
R, Skhiri V, Fresse J, Malek B, Suffran J Jamont . An approach for an efficient sharing of IP as a service in cloud FPGA. In: Proceedings of the 18th International Multi-Conference on Systems, Signals & Devices. 2021, 784−789
|
30 |
A, Khawaja J, Landgraf R, Prakash M, Wei E, Schkufza C J Rossbach . Sharing, protection, and compatibility for reconfigurable fabric with Amorphos. In: Proceedings of the 13th USENIX Conference on Operating Systems Design and Implementation. 2018, 107−127
|
31 |
Y, Zha J Li . Hetero-ViTAL: A virtualization stack for heterogeneous FPGA clusters. In: Proceedings of the 48th ACM/IEEE Annual International Symposium on Computer Architecture. 2021, 470−483
|
32 |
Xilinx. Alveo data center accelerator card platforms. See Docs.xilinx.com/r/en-US/ug1120-alveo-platforms website, 2021
|
33 |
Intel. FPGA Cloud Server, High Bandwidth Memory (HBM2) Interface Intel® FPGA IP user guide. See Intel website, 2021
|
34 |
Y K, Choi J, Cong Z, Fang Y, Hao G, Reinman P Wei . In-depth analysis on microarchitectures of modern heterogeneous CPU-FPGA platforms. ACM Transactions on Reconfigurable Technology and Systems, 2019, 12( 1): 4
|
35 |
N, Voss P, Quintana O, Mencer W, Luk G Gaydadjiev . Memory mapping for multi-die FPGAs. In: Proceedings of the 27th IEEE Annual International Symposium on Field-Programmable Custom Computing Machines. 2019, 78−86
|
36 |
Xilinx. TAlveo U280 data center accelerator card user guideT. See Xilinx.com/products/boards-and-kits/alveo/u280 website, 2021
|
37 |
J R, Hung C, Li P, Wang C, Shao J, Guo J, Wang G Shi . ACE-GCN: a fast data-driven FPGA accelerator for GCN embedding. ACM Transactions on Reconfigurable Technology and Systems, 2021, 14( 4): 21
|
38 |
Xilinx. Xilinx UltraScale: The next-generation architecture for your next-generation architecture. See Docs.xilinx.com/v/u/en-US/wp435-Xilinx-UltraScale website. 2014
|
39 |
J, Ma G, Zuo K, Loughlin X, Cheng Y, Liu A M, Eneyew Z, Qi B Kasikci . A hypervisor for shared-memory FPGA platforms. In: Proceedings of the 25th International Conference on Architectural Support for Programming Languages and Operating Systems. 2020, 827−48444
|
40 |
N, Tarafdar N, Eskandari T, Lin P Chow . Designing for FPGAs in the cloud. IEEE Design & Test, 2018, 35( 1): 23–29
|
41 |
A, Vaishnav K D, Pham D, Koch J Garside . Resource elastic virtualization for FPGAs using OpenCL. In: Proceedings of the 28th International Conference on Field Programmable Logic and Applications. 2018, 111−41184
|
42 |
I, Gonzalez S, Lopez-Buedo G, Sutter D, Sanchez-Roman F J, Gomez-Arribas J Aracil . Virtualization of reconfigurable coprocessors in HPRC systems with multicore architecture. Journal of Systems Architecture, 2012, 58(6−7): 247−256
|
43 |
C H, Huang P A Hsiung . Virtualizable hardware/software design infrastructure for dynamically partially reconfigurable systems. ACM Transactions on Reconfigurable Technology and Systems, 2013, 6( 2): 11
|
44 |
W, Wang M, Bolic J Parri . pvFPGA: accessing an FPGA-based hardware accelerator in a paravirtualized environment. In: Proceedings of 2013 International Conference on Hardware/Software Codesign and System Synthesis. 2013, 10
|
45 |
H L, Kidane E B, Bourennane G Ochoa-Ruiz . NoC based virtualized accelerators for cloud computing. In: Proceedings of the 10th IEEE International Symposium on Embedded Multicore/Many-core Systems-on-Chip. 2016, 133−137
|
46 |
C, Vatsolakis D Pnevmatikatos . RACOS: transparent access and virtualization of reconfigurable hardware accelerators. In: Proceedings of 2017 International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation. 2017, 11−19
|
47 |
Q, Zhao M, Amagasaki M, Iida M, Kuga T Sueyoshi . Enabling FPGA-as-a-service in the cloud with hCODE platform. IEICE Transactions on Information and Systems, 2018, 101-D( 2): 335–343
|
48 |
J M, Mbongue F, Hategekimana D T, Kwadjo C Bobda . FPGA virtualization in cloud-based infrastructures over virtio. In: Proceedings of the 36th IEEE International Conference on Computer Design. 2018, 242−245
|
49 |
J, Mbongue F, Hategekimana D T, Kwadjo D, Andrews C Bobda . FPGAVirt: a novel virtualization framework for FPGAs in the cloud. In: Proceedings of the 11th IEEE International Conference on Cloud Computing. 2018, 862−865
|
50 |
J, Coole G Stitt . Intermediate fabrics: virtual architectures for circuit portability and fast placement and routing. In: Proceedings of the 8th International Conference on Hardware/Software Codesign and System Synthesis. 2010, 13−22
|
51 |
J, Cong P, Wei C H, Yu P Zhou . Bandwidth optimization through on-chip memory restructuring for HLS. In: Proceedings of the 54th ACM/EDAC/IEEE Design Automation Conference. 2017, 43
|
52 |
J, Yang L, Yan L, Ju Y, Wen S, Zhang T Chen . Homogeneous NoC-based FPGA: the foundation for virtual FPGA. In: Proceedings of the 10th IEEE International Conference on Computer and Information Technology. 2010, 62−67
|
53 |
C, Huang P A Hsiung . Hardware resource virtualization for dynamically partially reconfigurable systems. IEEE Embedded Systems Letters, 2009, 1( 1): 19–23
|
54 |
M, Asiatici N, George K, Vipin S A, Fahmy P Ienne . Designing a virtual runtime for FPGA accelerators in the cloud. In: Proceedings of the 26th International Conference on Field Programmable Logic and Applications. 2016, 1−2
|
55 |
I, Giechaskiel K, Rasmussen J Szefer . Reading between the dies: Cross-SLR covert channels on multi-tenant cloud FPGAs. In: Proceedings of the 37th IEEE International Conference on Computer Design. 2019, 1−10
|
56 |
O, Knodel P, Lehmann R G Spallek . RC3E: reconfigurable accelerators in data centres and their provision by adapted service models. In: Proceedings of the 9th IEEE International Conference on Cloud Computing. 2016, 19−26
|
57 |
M, Huang D, Wu C H, Yu Z, Fang M, Interlandi T, Condie J Cong . Programming and runtime support to blaze FPGA accelerator deployment at datacenter scale. In: Proceedings of the 7th ACM Symposium on Cloud Computing. 2016, 456−469
|
58 |
J, Stangl ̈unser T, Lor S M P Dinakarrao . A fast and resource efficient FPGA implementation of secret sharing for storage applications. In: Madsen J, Coskun A K, eds, 2018 Design, Automation & Test in Europe Conference & Exhibition. 2018, 654–659
|
59 |
J, Weerasinghe F, Abel C, Hagleitner A Herkersdorf . Enabling FPGAs in hyperscale data centers. In: Proceedings of 2015 IEEE the 12th Intl Conf on Ubiquitous Intelligence and Computing and 2015 IEEE the 12th Intl Conf on Autonomic and Trusted Computing and 2015 IEEE the 15th Intl Conf on Scalable Computing and Communications and its Associated Workshops. 2015, 1078−1086
|
60 |
S A, Fahmy K, Vipin S Shreejith . Virtualized FPGA accelerators for efficient cloud computing. In: Proceedings of the 7th IEEE International Conference on Cloud Computing Technology and Science. 2015, 430−435
|
61 |
X, Li X, Wang F, Liu H Xu . DHL: enabling flexible software network functions with FPGA acceleration. In: Proceedings of the 38th IEEE International Conference on Distributed Computing Systems. 2018, 1−11
|
62 |
K, Papadimitriou A, Dollas S Hauck . Performance of partial reconfiguration in FPGA systems: a survey and a cost model. ACM Transactions on Reconfigurable Technology and Systems, 2011, 4( 4): 36
|
63 |
Xilinx. UltraScale Architecture Configuration. See Docs.xilinx.com/v/u/en-US/ug570-ultrascale-configuration website, 2022
|
64 |
J, Zhang Y, Xiong N, Xu R, Shu B, Li P, Cheng G, Chen T Moscibroda . The feniks FPGA operating system for cloud computing. In: Proceedings of the 8th Asia-Pacific Workshop on Systems. 2017, 22
|
65 |
O, Knodel P R, Genssler R G Spallek . Migration of long-running tasks between reconfigurable resources using virtualization. ACM SIGARCH Computer Architecture News, 2016, 44( 4): 56–61
|
66 |
A, Vaishnav K, Pham D Koch . Live migration for OpenCL FPGA accelerators. In: Proceedings of 2018 International Conference on Field-Programmable Technology. 2018, 38−45
|
67 |
D, Korolija T, Roscoe G Alonso . Do OS abstractions make sense on FPGAs? In: Proceedings of the 14th USENIX Conference on Operating Systems Design and Implementation. 2020, 991−1010
|
68 |
M, Asiatici N, George K, Vipin S A, Fahmy P Ienne . Virtualized execution runtime for FPGA accelerators in the cloud. IEEE Access, 2017, 5: 1900–1910
|
69 |
J, Fowers K, Ovtcharov M, Papamichael T, Massengill M, Liu D, Lo S, Alkalay M, Haselman L, Adams M, Ghandi S, Heil P, Patel A, Sapek G, Weisz L, Woods S, Lanka S K, Reinhardt A M, Caulfield E S, Chung D Burger . A configurable cloud-scale DNN processor for real-time AI. In: Proceedings of the 45th ACM/IEEE Annual International Symposium on Computer Architecture. 2018, 1−14
|
70 |
S, Yazdanshenas V Betz . Improving confidentiality in virtualized FPGAs. In: Proceedings of 2018 International Conference on Field-Programmable Technology. 2018, 258−261
|
71 |
S, Yazdanshenas V Betz . The costs of confidentiality in virtualized FPGAs. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 2019, 27( 10): 2272–2283
|
72 |
M, Zhao M, Gao C Kozyrakis . ShEF: shielded enclaves for cloud FPGAs. In: Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems. 2022, 1070−1085
|
73 |
J, Krautter D R E, Gnad M B Tahoori . Mitigating electrical-level attacks towards secure multi-tenant FPGAs in the cloud. ACM Transactions on Reconfigurable Technology and Systems, 2019, 12( 3): 12
|
74 |
J, Krautter D, Gnad M Tahoori . CPAmap: On the complexity of secure FPGA virtualization, multi-tenancy, and physical design. IACR Transactions on Cryptographic Hardware and Embedded Systems, 2020, 2020( 3): 121–146
|
75 |
A, Duncan A, Nahiyan F, Rahman G, Skipper M, Swany A, Lukefahr F, Farahmandi M Tehranipoor . SeRFI: Secure remote FPGA initialization in an untrusted environment. In: Proceedings of the 38th IEEE VLSI Test Symposium. 2020, 1−6
|
76 |
J, Krautter D R E, Gnad F, Schellenberg A, Moradi M B Tahoori . Active fences against voltage-based side channels in multi-tenant FPGAs. In: Proceedings of 2019 IEEE/ACM International Conference on Computer-Aided Design. 2019, 1−8
|
77 |
D, Jayasinghe A, Ignjatovic S Parameswaran . RFTC: runtime frequency tuning countermeasure using FPGA dynamic reconfiguration to mitigate power analysis attacks. In: Proceedings of the 56th ACM/IEEE Design Automation Conference. 2019, 1−6
|
78 |
G, Provelengios D, Holcomb R Tessier . Characterizing power distribution attacks in multi-user FPGA environments. In: Proceedings of the 29th International Conference on Field Programmable Logic and Applications. 2019, 194−201
|
79 |
H, Walder M Platzner . A runtime environment for reconfigurable hardware operating systems. In: Proceedings of the 14th International Conference on Field Programmable Logic and Application. 2004, 831−835
|
80 |
H J, Ko Z, Li S Midkiff . Optimizing data layout and system configuration on FPGA-based heterogeneous platforms. In: Proceedings of 2018 IEEE/ACM International Conference on Computer-Aided Design. 2018, 1−8
|
81 |
D Koch . Partial Reconfiguration on FPGAs: Architectures, Tools and Applications. New York: Springer, 2013
|
82 |
A M, Caulfield E S, Chung A, Putnam H, Angepat J, Fowers M, Haselman S, Heil M, Humphrey P, Kaur J Y, Kim D, Lo T, Massengill K, Ovtcharov M, Papamichael L, Woods S, Lanka D, Chiou D Burger . A cloud-scale acceleration architecture. In: Proceedings of the 49th Annual IEEE/ACM International Symposium on Microarchitecture. 2016, 1−13
|
83 |
S, Yazdanshenas V Betz . Quantifying and mitigating the costs of FPGA virtualization. In: Proceedings of the 27th International Conference on Field Programmable Logic and Applications. 2017, 1−7
|
84 |
R, Kirchgessner G, Stitt A, George H Lam . VirtualRC: a virtual FPGA platform for applications and tools portability. In: Proceedings of the 20th ACM/SIGDA International Symposium on Field Programmable Gate Arrays. 2012, 205−208
|
85 |
G, Stitt R, Karam K, Yang S Bhunia . A uniquified virtualization approach to hardware security. IEEE Embedded Systems Letters, 2017, 9( 3): 53–56
|
86 |
F, Schellenberg D R E, Gnad A, Moradi M B Tahoori . An inside job: remote power analysis attacks on FPGAs. In: Proceedings of 2018 Design, Automation & Test in Europe Conference & Exhibition. 2018, 1111−1116
|
87 |
S Trimberger . Security in SRAM FPGAs. IEEE Design & Test of Computers, 2007, 24( 6): 581
|
88 |
P, Zhou J, Sheng C H, Yu P, Wei J, Wang D, Wu J Cong . TMOCHA: multinode cost optimization in heterogeneous clouds with acceleratorsT. In: Proceedings of 2021 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays. 2021, 273−279
|
89 |
M, Shepovalov V Akella . FPGA and GPU-based acceleration of ML workloads on amazon cloud - A case study using gradient boosted decision tree library. Integration, 2020, 70: 1–9
|
90 |
K, Eguro R Venkatesan . FPGAs for trusted cloud computing. In: Proceedings of the 22nd International Conference on Field Programmable Logic and Applications. 2012, 63−70
|
91 |
C, Wu R, Buyya K Ramamohanarao . Cloud pricing models: taxonomy, survey, and interdisciplinary challenges. ACM Computing Surveys, 2020, 52( 6): 108
|
92 |
J, Landgraf T, Yang W, Lin C J, Rossbach E Schkufza . Compiler-driven FPGA virtualization with SYNERGY. In: Proceedings of the 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems. 2021, 818−831
|
|
Viewed |
|
|
|
Full text
|
|
|
|
|
Abstract
|
|
|
|
|
Cited |
|
|
|
|
|
Shared |
|
|
|
|
|
Discussed |
|
|
|
|