Date of Award


Degree Type


Degree Name

Doctor of Philosophy


Computer Engineering

Major Professor

Gregory D. Peterson

Committee Members

Robert J. Harrison, Micah Beck, Robert Hettich


In recent years, Graphics Processing Units (GPUs) have piqued the interest of researchers in scientific computing. Their immense floating point throughput and massive parallelism make them ideal for not just graphical applications, but many general algorithms as well. Load balancing applications and taking advantage of all computational resources in a machine is a difficult challenge, especially when the resources are heterogeneous. This dissertation presents the clUtil library, which vastly simplifies developing OpenCL applications for heterogeneous systems. The core focus of this dissertation lies in clUtil's ParallelFor construct and our novel PINA scheduler which can efficiently load balance work onto multiple GPUs and CPUs simultaneously.

Files over 3MB may be slow to open. For best results, right-click and select "save as..."