A Compiler Framework for Speculative Parallelization
Publikation: Beitrag zu Konferenzen › Paper › Beigetragen › Begutachtung
Beitragende
Abstract
Making efficient use of modern multi-core and future many-core CPUs is a major challenge. We describe a new compiler-based platform, Prospect, that supports the parallelization of sequential applications. The underlying approach is a generalization of an existing approach to parallelize runtime checks. The basic idea is to generate two variants of the application: (1) a fast variant having bare bone functionality, and (2) a slow variant with extra functionality. The fast variant is executed sequentially. Its execution is divided into epochs.
Each epoch is re-executed by an executor using the slow variant. The approach scales by running the executors on multiple cores in parallel to each other and to the fast variant. We have implemented the Prospect framework to evaluate this approach. Prospect allows custom plug-ins for generating the fast and slow variants. With the help of our novel StackLifter, a process can switch between the fast variant and the slow variant during runtime at arbitrary positions.
Each epoch is re-executed by an executor using the slow variant. The approach scales by running the executors on multiple cores in parallel to each other and to the fast variant. We have implemented the Prospect framework to evaluate this approach. Prospect allows custom plug-ins for generating the fast and slow variants. With the help of our novel StackLifter, a process can switch between the fast variant and the slow variant during runtime at arbitrary positions.
Details
Originalsprache | Englisch |
---|---|
Seiten | 131-140 |
Seitenumfang | 10 |
Publikationsstatus | Veröffentlicht - 2010 |
Peer-Review-Status | Ja |
Konferenz
Titel | CGO '10: Proceedings of the 8th annual IEEE/ACM international symposium on Code generation and optimization |
---|---|
Kurztitel | CGO |
Veranstaltungsnummer | |
Dauer | 24 - 28 April 2010 |
Webseite | |
Bekanntheitsgrad | Internationale Veranstaltung |
Ort | |
Stadt | Toronto |
Land | Kanada |
Externe IDs
Scopus | 77953970883 |
---|
Schlagworte
Forschungsprofillinien der TU Dresden
DFG-Fachsystematik nach Fachkollegium
Schlagwörter
- parallelization, speculation, bounds checker, assertions, stack translatio