The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.04 - July-Aug. (2012 vol.32)
pp: 42-53
Saturnino Garcia , University of California, San Diego
Donghwan Jeon , University of California, San Diego
Christopher Louie , University of California, San Diego
Michael Bedford Taylor , University of California, San Diego
ABSTRACT
The Kremlin open-source tool helps programmers by automatically identifying regions in sequential programs that merit parallelization. Kremlin combines a novel dynamic program analysis, hierarchical critical-path analysis, with multicore processor models to evaluate thousands of potential parallelization strategies and estimate their performance outcomes.
INDEX TERMS
Parallel processing, Hierarchical systems, Benchmark testing, Path planning, Programming, Upper bound, Parallel processing, critical-path analysis, Parallel processing, Hierarchical systems, Benchmark testing, Path planning, Programming, Upper bound, Parallel processing, Kremlin, practical oracle, parallelization, self-parallelism, hierarchical critical-path analysis
CITATION
Saturnino Garcia, Donghwan Jeon, Christopher Louie, Michael Bedford Taylor, "The Kremlin Oracle for Sequential Code Parallelization", IEEE Micro, vol.32, no. 4, pp. 42-53, July-Aug. 2012, doi:10.1109/MM.2012.52
REFERENCES
1. W. Blume et al., "Parallel Programming with Polaris," Computer, Aug. 2002, pp. 78-82.
2. M. Hall et al., "Maximizing Multiprocessor Performance with the SUIF Compiler," Computer, Aug. 1996, pp. 84-89.
3. W. Lee et al., "Space-Time Scheduling of Instruction-Level Parallelism on a Raw Machine," Proc. 8th Int'l Conf. Architectural Support for Programming Languages and Operating Systems, ACM, 1998, pp. 46-57.
4. S. Che et al., "Rodinia: A Benchmark Suite for Heterogeneous Computing," Proc. IEEE Int'l Symp. Workload Characterization (IISWC 09), IEEE CS, 2009, pp. 44-54.
5. G. Tournavitis et al., "Towards a Holistic Approach to Auto-Parallelization: Integrating Profile-Driven Parallelism Detection and Machine-Learning Based Mapping," Proc. ACM SIGPLAN Conf. Programming Language Design and Implementation (PLDI 09), ACM, 2009, pp. 177-187.
6. M. Frigo, C.E. Leiserson, and K.H. Randall, "The Implementation of the Cilk-5 Multithreaded Language," Proc. ACM SIGPLAN Conf. Programming Language Design and Implementation (PLDI 98), ACM, 1998, pp. 212-223.
7. M. Kumar, "Measuring Parallelism in Computation-Intensive Scientific/Engineering Applications," IEEE Trans. Computers, Sept. 1988, pp. 1088-1098.
8. S. Garcia et al., "Kremlin: Rethinking and Rebooting Gprof for the Multicore Age," Proc. 32nd ACM SIGPLAN Conf. Programming Language Design and Implementation (PLDI 11), ACM, 2011, pp. 458-469.
9. D. Jeon et al., "Kismet: Parallel Speedup Estimates for Serial Programs," Proc. ACM Int'l Conf. Object-Oriented Programming Systems Languages and Applications (OOPSLA 11), ACM, 2011, pp. 519-536.
10. D.H. Bailey et al., "The NAS Parallel Benchmarks—Summary and Preliminary Results," Proc. 1991 ACM/IEEE Conf. Supercomputing, ACM, 1991, pp. 158-165.
11. "NAS Parallel Benchmarks 2.3; OpenMP C"; www.hpcc.jpOmni.
5 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool