[Seminar] Towards Performance Portability for Heterogeneous Systems
University of Edinburgh
■ Contact : Prof. Jaejin Lee (02-880-1863)
Computing systems have become increasingly complex with the emergence of heterogeneous hardware combining multicore CPUs and GPUs. These parallel systems exhibit tremendous computational power at the cost of increased programming effort. This results in a tension between achieving performance and code portability / ease of programming. In this talk I will present a novel approach that offers high-level programming, code portability and high-performance. It is based on algorithmic pattern composition coupled with a powerful, yet simple, set of rewrite rules. This enables systematic transformation and optimization of a high-level program into a low-level hardware specific representation which leads to high performance code. I will show how a subset of the OpenCL programming model can be mapped to low-level patterns and how to automatically generate high performance OpenCL code on par with highly tuned implementations for multicore CPUs and GPUs.
Christophe Dubach received his Ph.D in Informatics from the University of Edinburgh in 2009 and holds a M.Sc. degree in Computer Science from EPFL (Switzerland). He is a RAEng/EPSRC Research Fellow in the Institute for Computing Systems Architecture at the University of Edinburgh (UK). In 2010 he spent one year as a visiting researcher at the IBM Watson Research Center (USA) working on the LiquidMetal project. In 2012 he spent six month working in the group of Prof. Jaejin Lee at SNU (Korea) where he implemented one of the "graph500" graph algorithm on a heterogeneous supercomputer. In addition to his recent work on heterogeneous systems, his research interests include co-design of both computer architecture and optimising compiler technology, adaptive microprocessor and software, and the application of machine learning in these areas.