A Plan for Practical Programming of FPGAs in the Data Center
In this session, Martin Herbordt, professor of Electrical & Computer Engineering at Boston University, and Robert Munafo, third-year PhD student in the CAAD Lab, reported on an ongoing project that aims to use machine learning to improve the performance of programming methods for FPGAs. Ahmed Sanaullah, Red Hat senior data scientist, led a live discussion open to all attendees addressing varied interests in data center and FPGA development.
Abstract
To leverage the flexibility and performance potential of FPGAs in the data center requires either expensive specialized engineering talent, or commercial proprietary C-to-hardware tools that yield demonstrably poor performance. This is the performance portability programmability problem (P^4).
In previous work, we found that there exists within current compilers the capability of delivering excellent FPGA performance for arbitrary C code, but that this capability is brittle, inconsistent, and requires some expertise on the part of the user to extract. Still, this result demonstrates that P^4 can be reduced to the problem of generating the correct sequence of optimizations for a particular input code and target architecture. Our hypothesis is that a solution to P^4 can be built using existing open source tools, primarily based on GCC, coupled with well-known machine learning techniques.
In this talk, we describe our plan in detail, together with problems to be solved, and outline our work to date. In particular, we report on an ongoing project that aims to use machine learning to control a newly customizable version of the GCC C compiler to automatically determine optimization pass ordering for FPGA targets specifically, and thereby improve performance as compared to existing (all proprietary) C-to-FPGA methods.
Speakers
Martin Herbordt, ECE Professor at Boston University
Robert Munafo, PhD student in the CAAD Lab at Boston University
Conversation Leader
Ahmed Sanaullah, Senior Data Scientist at Red Hat
For more information, contact rhresearchdays@redhat.com
Session Recording
Speaker
-
Ahmed Sanaullah