Shen, Kish and Costa, Vitor Santos and King, Andy
Distance: a New Metric for Controlling Granularity for Parallel Execution.
In: Jaffar, Joxan, ed.
Joint International Conference and Symposium for Logic Programming.
MIT Press, pp. 85-99.
ISBN 0-262-60031-5 .
(Full text available)
Granularity control is a method to improve parallel execution performance by limiting excessive parallelism. The general idea is that if the gain obtained by executing a task in parallel is less than the overheads required to support parallel execution, then the task is better executed sequentially. Traditionally, in logic programming, task size is estimated as the sequential time-complexity of evaluating the task. Tasks are only executed in parallel if task size exceeds a pre-determined threshold. We argue in this paper that the estimation of task complexity, on its own, is not an ideal metric for improving the performance of parallel programs through granularity control. We present a new metric for measuring granularity, based on a notion of emphdistance. We present some initial results with two very simple methods of using this metric for granularity control. We then discuss how more sophisticated granularity control methods can be devised using the new metric.
- Depositors only (login required):