Fysikkbygningen øst (kart)
Sem Sælands vei 24
The newly arrived general-purpose GPUs provide tremendous computing power, but also bring extra difficulties with respect to parallel programming of these new devices. An ideal scenario will therefore be to have an automated code generator that translates input C code into output CUDA code capable of running on Nvidia GPUs. This master project will use the well-known compiler infrastructure LLVM to realize the above goal, with an additional objective of also extending the applicability to heterogeneous CPU-GPU systems.
OpenMP is a well-established standard for programming shared-memory parallel computers. Since 2013, the latest version of OpenMP (4.0 or later) has included the possiblity of utilizing heterogeneous computing systems that are made up of multicore CPUs and accelerators (such as GPUs and many-integratred-core coprocessors). We want to examine how typical numerical algorithms should be re-implemented using OpenMP-4, with the aim of using heterogeneous computing systems.