Title :
Whole program data dependence profiling to unveil parallel regions in the dynamic execution
Author :
Sato, Yuuki ; Inoguchi, Yasushi ; Nakamura, T.
Author_Institution :
Res. Center for Adv. Comput. Infrastruct., Japan Adv. Inst. of Sci. & Technol. (JAIST), Nomi, Japan
Abstract :
As application programs become large and complex year by year, mapping these programs into highly parallelized hardware resources by understanding all of the program structures across an application is becoming harder and harder for programmers. In this paper, we present an advanced technique that can extract dynamic memory dataflow across whole program execution to provide programmers with hints for program parallelization and acceleration. Using a pre-compiled executable binary code as the input, we monitor data dependencies via memory references together with dynamic loop- and call-contexts. We implement our mechanism on a dynamic binary translation system and evaluate it using productive benchmark suites. From these results, we confirm that we can successfully keep track of data dependencies among function calls, loops and their iterations using LCCT+M (Loop-Call Context Tree with Memory Dataflow) representation within reasonable time and memory space overheads. We also demonstrate our profiling can help programmers to identify loop-, task- and pipeline-parallelisms in its actual dynamic execution.
Keywords :
benchmark testing; computerised monitoring; data flow analysis; parallel programming; parallelising compilers; pipeline processing; tree data structures; LCCT+M representation; application program mapping; benchmark suites; data dependency monitoring; dynamic binary translation system; dynamic call-contexts; dynamic loop-contexts; dynamic memory dataflow extraction; dynamic program execution; function calls; loop-call context tree with memory dataflow representation; loop-parallelisms; memory references; memory space overheads; parallel regions; parallelized hardware resources; pipeline-parallelisms; precompiled executable binary code; program acceleration; program data dependence profiling; program parallelization; program structures; task-parallelisms; time space overheads; Arrays; Binary codes; Context; Data mining; Image edge detection; Monitoring; Parallel processing; data flow profiling; dynamic data dependencies; parallelism;
Conference_Titel :
Workload Characterization (IISWC), 2012 IEEE International Symposium on
Conference_Location :
La Jolla, CA
Print_ISBN :
978-1-4673-4531-6
DOI :
10.1109/IISWC.2012.6402902