2002•Unpublished venueRequires access

Schedule-driven loop unrolling for parallel processors

Hesham El‐Rewini, Tyree Lewis

Open publisher page 1 citations

Abstract

A discussion is given on the problem of scheduling parallel program tasks that are enclosed in a set of nested loops on parallel computers. The authors introduce a representation of the tasks and their relations in a loop. The representation allows them to express loop-carried data dependences among tasks as well as loop information that cannot be represented using ordinary task graphs. They also introduce a new technique for scheduling unrolled loops onto arbitrary target machines. The technique allows several iterations of a set of loops as well as tasks within the same iteration to overlap in execution in a way that minimizes the loop completion time. They use local neighborhood search and simulated annealing optimization methods to find the best way to unroll a set of nested loops. The goal is to find which loops to unroll and for how many times and the schedule of the tasks in the post-unrolling loop on the available processors.>

About this research paper

What this paper is about

A discussion is given on the problem of scheduling parallel program tasks that are enclosed in a set of nested loops on parallel computers. The authors introduce a representation of the tasks and their relations in a loop. The representation allows them to express loop-carried data dependences among tasks as well as loop information that cannot be represented using ordinary task graphs. They also introduce a new technique for scheduling unrolled loops onto arbitrary target machines. The technique allows several iterations of a set of loops as well as tasks within the same iteration to overlap in execution in a way that minimizes the loop completion time. They use local neighborhood search and simulated annealing optimization methods to find the best way to unroll a set of nested loops. The goal is to find which loops to unroll and for how many times and the schedule of the tasks in the post-unrolling loop on the available processors.>

Why it matters

OpenAlex reports 1 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

A discussion is given on the problem of scheduling parallel program tasks that are enclosed in a set of nested loops on parallel computers. The authors introduce a representation of the tasks and their relations in a loop. The representation allows them to express loop-carried data dependences among tasks as well as loop information that cannot be represented using ordinary task graphs. They also introduce a new technique for scheduling unrolled loops onto arbitrary target machines. The technique allows several iterations of a set of loops as well as tasks within the same iteration to overlap in execution in a way that minimizes the loop completion time. They use local neighborhood search and simulated annealing optimization methods to find the best way to unroll a set of nested loops. The goal is to find which loops to unroll and for how many times and the schedule of the tasks in the post-unrolling loop on the available processors.>

Key concepts: Loop unrolling, Computer science, Nested loop join, Loop fusion, Parallel computing, Loop (graph theory), Scheduling (production processes), Loop fission

Related papers

Back to paper searchBrowse research topicsOriginal source
Schedule-driven loop unrolling for parallel processors — Research Paper | ScholarLens