CPU+GPU Load Balance Guided by Execution Time Prediction

Jean-François Dollinger 1 Vincent Loechner 1, 2
1 CAMUS - Compilation pour les Architectures MUlti-coeurS
Inria Nancy - Grand Est, ICube - Laboratoire des sciences de l'ingénieur, de l'informatique et de l'imagerie
Abstract : We contribute a method to jointly use CPU and GPU in order to execute a balanced parallel code, automatically generated using polyhedral tools. To evenly distribute the load, the system is guided by predictions of loop nest execution times. Static and dynamic performance factors are modelled by two automatic and portable frameworks targeting CPUs and CUDA GPUs. The prediction methods comprise three parts: static code generation, offline profiling and online prediction. There are multiple versions of the loop nests, so that our scheduler balances the load of multiple combinations of code versions and selects the fastest before execution. This proposal is validated on the polyhedral benchmark suite, showing that CPU+GPU load balance is maintained and overhead is minimal.
Complete list of metadatas

https://hal.inria.fr/hal-01095890
Contributor : Vincent Loechner <>
Submitted on : Tuesday, December 16, 2014 - 2:17:28 PM
Last modification on : Saturday, October 27, 2018 - 1:26:47 AM

Identifiers

  • HAL Id : hal-01095890, version 1

Citation

Jean-François Dollinger, Vincent Loechner. CPU+GPU Load Balance Guided by Execution Time Prediction. Fifth International Workshop on Polyhedral Compilation Techniques (IMPACT 2015), Jan 2015, Amsterdam, Netherlands. ⟨hal-01095890⟩

Share

Metrics

Record views

359