Improving the Open64 backend for GPUs
by Rodrigo Dominguez for Open64
NVIDIA uses Open64 as a front-end to compile CUDA programs into an intermediate language called PTX. PTX can be viewed as an assembly language targeting a virtual machine and is an abstract layer between the application and the final hardware-dependent machine code. In this project, I will analyze the impact of instruction scheduling optimizations performed by Open64 and I will implement an improved scheduler based on the Integer Linear Programming and Monte Carlo Search models.