TU Darmstadt / ULB / TUbiblio

Meeting the challenges of parallelizing sequential programs

Atre, Rohit ; Jannesari, Ali ; Wolf, Felix (2017)
Meeting the challenges of parallelizing sequential programs.
29th ACM Symposium on Parallelism in Algorithms and Architectures. Washington DC., USA (24.-26.07.2017)
doi: 10.1145/3087556.3087592
Konferenzveröffentlichung, Bibliographie

Kurzbeschreibung (Abstract)

Discovering which code sections in a sequential program can be made to run in parallel is the first step in parallelizing it, and programmers routinely struggle in this step. Most of the current parallelism discovery techniques focus on specific language constructs while trying to identify such code sections. In contrast, we propose to concentrate on the computations performed by a program. In our approach, a program is treated as a collection of computations communicating with one another using a number of variables. Each computation is represented as a Computational Unit (CU). A CU contains the inputs and outputs of a computation, and the three phases of a computation: read, compute, and write. Based on the notion of CU, We present a unified framework to identify both loop and task parallelism in sequential programs.

Typ des Eintrags: Konferenzveröffentlichung
Erschienen: 2017
Autor(en): Atre, Rohit ; Jannesari, Ali ; Wolf, Felix
Art des Eintrags: Bibliographie
Titel: Meeting the challenges of parallelizing sequential programs
Sprache: Englisch
Publikationsjahr: 24 Juli 2017
Verlag: ACM
Buchtitel: SPAA '17: Proceedings of the 29th ACM Symposium on Parallelism in Algorithms and Architectures
Veranstaltungstitel: 29th ACM Symposium on Parallelism in Algorithms and Architectures
Veranstaltungsort: Washington DC., USA
Veranstaltungsdatum: 24.-26.07.2017
DOI: 10.1145/3087556.3087592
Kurzbeschreibung (Abstract):

Discovering which code sections in a sequential program can be made to run in parallel is the first step in parallelizing it, and programmers routinely struggle in this step. Most of the current parallelism discovery techniques focus on specific language constructs while trying to identify such code sections. In contrast, we propose to concentrate on the computations performed by a program. In our approach, a program is treated as a collection of computations communicating with one another using a number of variables. Each computation is represented as a Computational Unit (CU). A CU contains the inputs and outputs of a computation, and the three phases of a computation: read, compute, and write. Based on the notion of CU, We present a unified framework to identify both loop and task parallelism in sequential programs.

Fachbereich(e)/-gebiet(e): 20 Fachbereich Informatik
20 Fachbereich Informatik > Parallele Programmierung
Hinterlegungsdatum: 18 Jan 2018 11:42
Letzte Änderung: 04 Apr 2024 11:41
PPN:
Export:
Suche nach Titel in: TUfind oder in Google
Frage zum Eintrag Frage zum Eintrag

Optionen (nur für Redakteure)
Redaktionelle Details anzeigen Redaktionelle Details anzeigen