Performance Models for Heterogeneous Iterative Programs

Aparna Sasidharan


This article describes techniques to model the performance of heterogeneous iterative programs, which can execute on multiple device types (CPUs and GPUs). We have classified iterative programs into two categories - static and dynamic, based on their workload distributions. Methods are described to model their performance on multi-device machines using linear regression from statistics. Experiments were designed to capture the behavioral response of different types of iterative programs to variations in regression variables. Experiments were divided into two sets - training and validation. Training sets were used to train and compare performance models, and validation sets were used to determine the accuracy of predictions. Performance models were developed for the execution time and the energy consumption of programs. 


Hybrid Programming Models; Multi-GPU architectures; Unified Memory; Performance Models; Statistics; Energy Models; Iterative Programs

Full Text:



  • There are currently no refbacks.