Abstract: New computer architectures have a tendency to introduce new programming models. CUDA had been introduced for programming GPUs. Newer efforts, such as OpenCL and OpenACC tried to introduce generality and portability across a broader class of accelerators. Now, the integration of OpenACC into the OpenMP standard is being considered. In this talk, I will present the results of an effort that pursued the suitability of OpenMP for GPUs from the start. Building on an advanced parallelizing compilers, OpenMP programs are translated to CUDA. By adding directives that control CUDA-specific features, we study the importance of adding such features to future OpenMP standards. An automatic tuner is a key capability of the translation process. It addresses the "achilles heel" of optimizing compilers, which is the challenge of making optimization decisions based on runtime knowledge. Such dynamic optimization support is particularly importance given the complexity of today's heterogeneous architectures.
Bio: Rudolf Eigenmann is a professor at the School of Electrical and Computer Engineering. He is a co-principal investigator for Information Technology in the Network for Earthquake Engineering Simulation (NEES) Operations project, 2009-2014. His research interests include optimizing compilers, programming methodologies and tools, performance evaluation for high-performance computers and applications, and cyberinfrastructures. Dr. Eigenmann received a Ph.D. in Electrical Engineering/Computer Science in 1988 from ETH Zurich, Switzerland.