English

TREES: A CPU/GPU Task-Parallel Runtime with Explicit Epoch Synchronization

Distributed, Parallel, and Cluster Computing 2016-08-03 v1 Operating Systems Programming Languages

Abstract

We have developed a task-parallel runtime system, called TREES, that is designed for high performance on CPU/GPU platforms. On platforms with multiple CPUs, Cilk's "work-first" principle underlies how task-parallel applications can achieve performance, but work-first is a poor fit for GPUs. We build upon work-first to create the "work-together" principle that addresses the specific strengths and weaknesses of GPUs. The work-together principle extends work-first by stating that (a) the overhead on the critical path should be paid by the entire system at once and (b) work overheads should be paid co-operatively. We have implemented the TREES runtime in OpenCL, and we experimentally evaluate TREES applications on a CPU/GPU platform.

Keywords

Cite

@article{arxiv.1608.00571,
  title  = {TREES: A CPU/GPU Task-Parallel Runtime with Explicit Epoch Synchronization},
  author = {Blake A. Hechtman and Andrew D. Hilton and Daniel J. Sorin},
  journal= {arXiv preprint arXiv:1608.00571},
  year   = {2016}
}
R2 v1 2026-06-22T15:09:28.011Z