[Seminar] LiquidMetal: a Unified Programming Language and Runtime for Heterogeneous Platforms
LiquidMetal (www.research.ibm.com/liquidmetal/) aims to address the difficulties that programmers face today when developing applications for computers that feature programmable accelerators (such as GPUs or FPGAs) alongside conventional multi-core processors. It offers a single unified programming language called Lime and a runtime that allows portions of an application to move fluidly between hardware and software, dynamically and adaptively.
This talk will present the features of Lime, a new Java-compatible language targeting heterogeneous systems, that allow an optimizing compiler to generate high quality GPU code. The key insight is that the language type system enforces isolation and immutability invariants that allow the compiler to optimize for a GPU without heroic compiler analysis. The performance obtained is competitive with hand-tuned code and we achieve between 10-400x speedup relative to a JVM with JIT compilation enabled.
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). He is currently a visiting researcher in the Multicore Computing Research Lab at SNU where he works on mapping graph algorithms to a multi-GPUs computer cluster. In 2010 he spent one year as a visiting researcher at the IBM Watson Research Center (USA) working on the LiquidMetal project. In addition to his recent work on GPUs, 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.
■ 문의 이재진 교수 (02-880-1863)