Abstract

In this seminar we will present our methodology of unleashing the potential of GPU computing in legacy Fortran codes: to what degree the source code has to be modified to become usable on GPUs, how to turn single-threaded Fortran code into multi-threaded ensemble, how to pack all code into single GPU kernel to minimize synchronization stalls, how to map small loops onto parallel threads with custom directives and LLVM/NVVM, how to retain the preferred Fortran formatted outputs and other questions. The seminar is intended to introduce scientific code developers into techniques beyond the standard CUDA/OpenCL/OpenACC programming methodology, conserve the existing codebase and achieve high GPU utilization. About the speaker Dmitry Mikushin holds MS degree in computer science from the Lomonosov Moscow State University. His working experience includes GPUs and CellBE software engineering at NVIDIA (2009-2011), computational science and GPU-enabled compilers at the University of Lugano (2012-present). At Applied Parallel Computing LLC (2011-present) he leads GPU porting and optimization projects as well as delivery of HPC training courses to academia and industry.