Skip to content
/ DiscoPoP Public

Dependence-Based Code Transformation for Coarse-Grained Parallelism

Notifications You must be signed in to change notification settings

zbjob/DiscoPoP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

DiscoPoP

Links:

https://www.informatik.tu-darmstadt.de/parallel/research_3/discopop.en.jsp

https://llvm.org/ProjectsWithLLVM/#discopop

DiscoPoP is a tool that helps software developers parallelize their programs with threads. It discovers potential parallelism in a sequential program and makes recommendations on how to exploit it.

The ability of compilers to automatically translate sequential programs into efficient parallel code is quite limited. Although auto-parallelization has been successfully applied in some cases such as loops that satisfy certain properties, no compiler exists yet that can effectively parallelize an arbitrarily structured program. Because a compiler does not know the precise value of pointers and array indices that are computed at runtime, it may assume parallelism-preventing data dependences in places where they would never occur in practice. As a result, parallelization becomes too conservative. With our parallelism discovery tool DiscoPoP, we aim to circumvent this problem. We abandon the idea of fully automatic parallelization and instead point the programmer to likely parallelization opportunities that we identify via dynamic dependence analysis. In this way, we consider only data dependences that actually occur. From these dynamic dependences we derive possible parallel design patterns, which we propose to the programmer to parallelize their programs.

Publications:

Dependence-Based Code Transformation for Coarse-Grained Parallelism https://dl.acm.org/citation.cfm?doid=2723772.2723777

Beyond Data Parallelism: Identifying Parallel Tasks in Sequential Programs https://link.springer.com/chapter/10.1007%2F978-3-319-27140-8_39

About

Dependence-Based Code Transformation for Coarse-Grained Parallelism

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published