Oracle Scheduling: Controlling Granularity in Implicitly Parallel Languages

Source: Association for Computing Machinery

Favorite

Free registration required

A classic problem in parallel computing is determining whether to execute a task in parallel or sequentially. If small tasks are executed in parallel, the task-creation overheads can be overwhelming. If large tasks are executed sequentially, processors may spin idle. This granularity problem, however well known, is not well understood: broadly applicable solutions remain elusive. The authors propose techniques for controlling granularity in implicitly parallel programming languages. Using a cost semantics for a general-purpose language in the style of the lambda calculus with support for parallelism, they show that task-creation overheads can indeed slow down parallel execution by a multiplicative factor.
Format:PDF Size:456.90
Date:Oct 2011