Fast energy-optimal multi-kernel DNN-like application allocation on multi-FPGA platforms

Platforms with multiple Field Programmable Gate Arrays (FPGAs), such as Amazon Web Services (AWS) F1 instances, can efficiently accelerate multi-kernel pipelined applications, e.g., Convolutional Neural Networks for machine vision tasks or transformer networks for Natural Language Processing tasks....

ver descrição completa

Detalhes bibliográficos
Autores: Shan, Junnan, Lazarescu, Mihai T., Cortadella, Jordi|||0000-0001-8114-250X, Lavagno, Luciano, Casu, Mario R.
Formato: artículo
Fecha de publicación:2021
País:España
Recursos:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/346425
Acesso em linha:https://hdl.handle.net/2117/346425
https://dx.doi.org/10.1109/TCAD.2021.3076958
Access Level:acceso abierto
Palavra-chave:Field programmable gate arrays
Energy consumption
CNN
NLP
Transformer
Multi-FPGA
Allocation
Optimization
Heuristic
AWS
Matrius de portes programables per l'usuari
Energia -- Consum
Àrees temàtiques de la UPC::Informàtica::Informàtica teòrica
Descrição
Resumo:Platforms with multiple Field Programmable Gate Arrays (FPGAs), such as Amazon Web Services (AWS) F1 instances, can efficiently accelerate multi-kernel pipelined applications, e.g., Convolutional Neural Networks for machine vision tasks or transformer networks for Natural Language Processing tasks. To reduce energy consumption when the FPGAs are underutilized, we propose a model to (1) find off-line the minimum-power solution for given throughput constraints, and (2) dynamically reprogram the FPGA at runtime (which is complementary to dynamic voltage and frequency scaling) to match best the workloads when they change. The off-line optimization model can be solved using a Mixed-Integer Non-Linear Programming (MINLP) solver, but it can be very slow. Hence, we provide two heuristic optimization methods that improve result quality within a bounded time. We use several very large designs to demonstrate that both heuristics obtain comparable results to MINLP, when it can find the best solution, and they obtain much better results than MINLP, when it cannot find the optimum within a bounded amount of time. The heuristic methods can also be thousands of times faster than the MINLP solver.