Development of scheduling methods for simultaneous multiprocessing in a software defined heterogeneous FPGA (as Research Associate in ENEAC project – University of Bristol)
This research addresses the energy and performance challenge of modern processing systems by investigating how a device formed by processing units with different granularities ranging from coarse grain CPU cores of different complexity, medium grain general purpose GPU cores and fine grain FPGA logic cells can be dynamically programmed. The challenge is to be able to program all these resources with a single programming model and create a run-time system that can automatically tune the software to the best execution resource from energy and performance points of view.
Introduction of scheduling methods to efficiently parallelize an application execution on different compute units of an SoC composed of FPGA and multi-core CPU devices has been my main responsibility within this project.