AbstractWith ever increasing data volumes and computing complexities, power-efficient alternatives, particularly Field Programmable Gate Arrays (FPGAs), need to be explored for industrial-scale data centres. Whilst FPGA device sizes have increased and associated design tools have matured, there are still challenges for their seamless integration model. This acts to hamper the abstraction of FPGA as a scalable, run-time programmable and high throughput resource, which can be designed from a high-level programming environment.
This work contributes to the programming challenges in two domains; namely design process and the run-time programming. Firstly, it builds an integration stack that enables just-in-time compilation and runtime programmability for soft-cores in data centre environments, particularly for highly dynamic task queues. It enables remote access to an independent scalable FPGA accelerator in a similar manner to software-based systems whilst providing up to 10.7× greater energy efficiency.
The work then proposes an abstracted platform-independent optimisation approach based on OpenCL for improving FPGA-based performance. Through the maximisation of resource utilisation via parallel workload balancing, the work is able to more fairly evaluate heterogeneous accelerators and show that FPGAs are capable of achieving better energy efficiency without requiring FPGA-specific language and skills.
Finally, the work targets novel optimisation of throughput by both design and runtime techniques for area shared multi-task processing. It proposes a framework built on machine learning based characterisation and clustering of tasks. Integrated with static mapping of tasks, multi-task design space exploration and pre-emptive scheduling, the framework provides optimal spatial and temporal resource utilisation resulting in up to 2.8× and 2.3× higher throughput and energy efficiency compared to previous approaches.
|Date of Award
|Queen's University Belfast
|Roger Woods (Supervisor) & Georgios Karakonstantis (Supervisor)
- data centres
- resource management
- cloud computing