Proceedings of the 2013 IEEE/ACM International Symposium on Code Generation and Optimization (CGO) (2009)
Mar. 22, 2009 to Mar. 25, 2009
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/CGO.2009.15
Effectively migrating sequential applications to take advantage of parallelism available on multicore platforms is a well-recognized challenge. This paper addresses important aspects of this issue by proposing a novel profiling technique to automatically detect available concurrency in C programs. The profiler, called Alchemist, operates completely transparently to applications, and identifies constructs at various levels of granularity (e.g., loops, procedures, and conditional statements) as candidates for asynchronous execution. Various dependences including read-after-write (RAW), write-after-read (WAR), and write-after-write (WAW), are detected between a construct and its continuation, the execution following the completion of the construct.
profiling; program dependence; parallelization; execution indexing
Xiangyu Zhang, Suresh Jagannathan, Armand Navabi, "Alchemist: A Transparent Dependence Distance Profiling Infrastructure", Proceedings of the 2013 IEEE/ACM International Symposium on Code Generation and Optimization (CGO), vol. 00, no. , pp. 47-58, 2009, doi:10.1109/CGO.2009.15