Collaboratory Student Projects – Boston University Systems Seminar
Boston University students will present their 2022 Red Hat Collaboratory Student Research Projects. Learn more here. Additional student projects will be presented during the November 1 Red Hat Research Research Interest Group Meeting.
Speaker: Xiteng Yao
Project Title: Practical Programming of FPGAs with Open-Source Tools: Optimizing High-level Synthesis Using Machine Learning
Mentor: Martin Herbordt, Professor, College of Engineering
Abstract: A fundamental problem in Computer Engineering is the difficulty in creating
applications that are simultaneously programmable, performant, and portable (PPP).
This is especially challenging when the target is hardware, rather than software, as for
Field Programmable Gate Arrays (FPGAs). FPGAs are a type of processor making
rapid inroads in datacenters; in FPGAs, the hardware is mapped to the application
rather than vice versa. This project addresses the PPP problem for FPGAs by applying
supervised and reinforcement learning to the compilation process.
High-level synthesis (HLS) tools convert standard programs to implementations that
can run on FPGAs. These tools are vastly complex, applying hundreds of different
methods (passes) to improve performance. What is to be learned is the optimal
application of these methods, both in general and with respect to particular
applications. The problems that have been addressed include generating data to be
used for training and creating a framework to use the training data to train the
machine learning model.
The project has tested different models on a set of programs. The result shows that
reinforcement learning is more suitable to approach the problem. The code optimized
by reinforcement learning models could yield better performance than optimizing
using the traditional approach. However, depending on the different strategies used
for optimization, the learning speed, performance potential, and speedup vary
significantly. As a result, it becomes vital to choose the right strategy when using
machine learning to optimize HLS.