Obtaining synchronization-free code with maximum parallelism
This paper addresses the problem of extracting the maximum synchronization-free parallelism that may be present in loops. In order to reduce communication and synchronization overheads, some parallelizing compilers try to identify independent computational partitions - if there are any - of a sequen...
| Autores: | , , |
|---|---|
| Tipo de recurso: | informe técnico |
| Fecha de publicación: | 1996 |
| País: | España |
| Institución: | Universitat Politècnica de Catalunya (UPC) |
| Repositorio: | UPCommons. Portal del coneixement obert de la UPC |
| Idioma: | inglés |
| OAI Identifier: | oai:upcommons.upc.edu:2117/82908 |
| Acceso en línea: | https://hdl.handle.net/2117/82908 |
| Access Level: | acceso abierto |
| Palabra clave: | Synchronization Free-code Parallel computation Àrees temàtiques de la UPC::Informàtica::Informàtica teòrica |
| Sumario: | This paper addresses the problem of extracting the maximum synchronization-free parallelism that may be present in loops. In order to reduce communication and synchronization overheads, some parallelizing compilers try to identify independent computational partitions - if there are any - of a sequential program. We focus on the case of loops with constant dependence distance vectors. We consider a statement instance as a basic unit that can be allocated to a processor, in contrast other methods that use an iteration instance. We show that a previously proposed family of scheduling heuristics (Graph Traversal Scheduling) is optimal in the sense that no more parallelism can be expressed with synchronization-free code. Furthermore, we give a quasi-linear time algorithm to find such an optimal Graph Traversal Scheduling. |
|---|