Bibliography for Task-level Parallelism ExtractionBibliography for Task-level Parallelism Extraction updates: [rs/040115] This document is meant to be a complete state-of-the-art overview for task-level parallelism extraction. [rs/040217] added paragraph on Functional Pipelining [rs/040301] added paragraph on Pattern-based approaches Automated parallelism extraction Michael Wolfe. Optimizing Supercompilers for Supercomputers. The MIT Press, Cambridge, Massachusetts, 1989 (copy/rs) M. Girkar and C.D. Polychronopoulos. Automatic extraction of functional parallelism from ordinary programs. IEEE Trans. on Parallel & Distributed Systems, 1992. (pdf) Utpal Banerjee, Rudolf Eigenmann, Alexandru Nicolau. Automatic Program Parallelization. Proceedings of the IEEE, 1993 (pdf) S. Ramaswamy, S. Sapatnekar, and P. Banerjee. A framework for exploiting data and functional parallelism on distributed memory multicomputers. Technical Report CRHC-94-10, Center for Reliable and High-Performance Computing, University of Illinois, Urbana, Ill., 1994 (pdf) T. Gross, D. O'Hallaron, and J. Subhlok. Task parallelism in a High Performance Fortran framework. IEEE Parallel and Distributed Technology, 1994 (pdf) Banerjee, P., Chandy, J. A., Hodges IV, E. W., Holm, J. G., Lain, A., Palermo, D. J., Ramaswamy, S., Su, E. The Paradigm Compiler for Distributed--Memory Multicomputers. Computer, 1995 (ps) Milind Girkar, Constantine D. Polychronopoulos. Extracting Task-Level Parallelism. ACM Transactions on Programming Languages and Systems, 1995 (copy/rs) T.S. Abdelrahman, S. Huynh. Exploiting Task-Level Parallelism Using pTask. Int'l Conference on Parallel and Distributed Processing Techniques and Applications, 1996 (pdf) task corresponds to asynchronous method invocation compile-time module: task-procedure conversion + data-access summaries + synchronisation (section 3) run-time module: workers + synchronisation on regions + scheduling for data locality (section 4) optimistic compile-time approach to task-procedure creation unnecessary run-time overhead as a result of all different sync protocols necessary to quarantee program correctness Hideki Saito, Nicholas Stavrakos, Steven Carroll, Constantine Polychronopoulos, Alex Nicolau. The Design of the PROMIS Compiler. Computational Complexity, 1999 (pdf) Rajiv Gupta, Santosh Pande, Kleanthis Psarris, Vivek Sarkar. Compilation techniques for parallel systems. Parallel Computing, 1999 (pdf) Manish Gupta, Sayak Mukhopadhyay, Navin Sinha. Automatic Parallelization of Recursive Procedures. International Journal of Parallel Programming, 1999 (pdf) Sumit Gupta, Nikil Dutt, Rajesh Gupta, Alex Nicolau. Coordinated Parallelizing Compiler Optimizations and High-Level Synthesis. CECS Technical Report #02-35, 2002 (pdf) S. Gupta, N.D. Dutt, R.K. Gupta, A. Nicolau. SPARK : A High-Level Synthesis Framework For Applying Parallelizing Compiler Transformations. International Conference on VLSI Design, 2003 (pdf) Java Aart J.C. Bik, Dennis B. Gannon. Automatically Exploiting Implicit Parallelism in Java. Concurrency: Practice and Experience, 1997 (pdf) Mike Chen, Kunle Olukotun. Exploiting Method-Level Parallelism in Single-Threaded Java Programs. International Conference on Parallel Architectures and Compilation Techniques, 1998 (pdf) Kristof Beyls, Erik D'Hollander, Yijun Yu. JPT: a Java Parallelization Tool. PVM/MPI, 1999 (pdf) B. Chan, T.S. Abdelrahman. Run-time support for the automatic parallelization of Java programs. Int'l Conference on Parallel and Distributed Computing and Systems, 2001 (pdf) focus on pointer-based dynamic data structures and recursion in Java enforces sequential execution order on threads performing conflicting operations on the same data (which results in lots of synchronisation) follow-up project for pTask Meng Yu, Minyi Guo, Yi Pan, Wanyu Zang and Li Xie. JAPS-II: A Source to Source Parallelizing Compiler for Java. PDPTA, 2002 (copy/rs) automatic parallelism extraction technique for object-oriented programs with polymorphism and inheritance. based on program CFG from which the DDG abd Object-Dependence Graph (ODG) is constructed main method: object/reference aliasing analysis (section 3.3) focus on loops: clustering objects related to the same loop, ... (section3.4) little explanation to see the novelty of this technique no example of parallelised code to clarify the effect of analysis Mike Chen and Kunle Olukotun. TEST: A Tracer for Extracting Speculative Threads. International Symposium on Code Generation and Optimization, San Francisco, 2003 (pdf) Mike Chen, Kunle Olukotun. The Jrpm System for Dynamically Parallelizing Java Programs. International Symposium on Computer Architecture, 2003 (pdf) M. Kandemir, W. Zhang, and M. Karakoy. Runtime code parallelization for on-chip multiprocessors. DATE-03, Germany, March, 2003. (pdf) Functional Pipelining I. Karkowski, H. Corporaal, FP-Map - An Approach to the Functional Pipelining of Embedded Programs, 4th International Conf. on High-Performance Computing, pp. 415-420, Bangalore, December 1997 (ps.gz) I. Karkowski and H. Corporaal, FP-Map - An Approach to the Functional Pipelining of Embedded Programs. Technical report no. 1-68340-44/1997/06, Delft University of Technology, May 1997 (ps.gz) I. Karkowski, H. Corporaal, Design of Heterogeneous Multi-processor Embedded Systems: Applying Functional Pipelining, PACT'97, San Fransisco, USA, November 1997 (ps.gz) I. Karkowski, H. Corporaal, Design Space Exploration Algorithm for Heterogeneous Multi Processor Embedded System Design, 35th DAC Anniversary, pp. 82-87, San Fransisco, CA, USA, June 1998 (ps.gz) Pattern-based Parallel Programming J.-P. Briot, R.Querraoui, K.-P. Lohr, Concurrency and distribution in object-oriented programming, ... P. Wu, D. Padua, Containers on parallelization of general-purpose Java programs, ... M. Mizuno, G. Singh, M.L. Neilsen, D.H. Lenhert, N.Zhang, A.B. Gross, An invariant pattern-based approach to develop concurrent programs, ... M. Mizuno, A structured approach for developing concurrent programs in Java, ... A. Singh, J. Schaeffer, D. Szafron, Experience with parallel programming using code templates, ... S. MacDonald, D. Szafron, J. Schaeffer, Object-oriented pattern-based parallel programming with automatically generated frameworks, ... S. MacDonald, D. Szafron, J. Schaeffer, S. Bromling, From patterns to frameworks to parallel programs, ... D. Goswami, A. Singh, B.R. Preiss, Using object-oriented techniques for realizing parallel architectural skeletons, ... C.S. Raghavendra, S. Bhansali, On porting sequential programs to parallel machines, ... Program analysis Mohammad R. Haghighat. Symbolic Analysis for Parallelizing Compilers. Kluwer Academic Publishers, 1995. Related bibliography Eike Best. Semantics of Sequential and Parallel Programs. Prentice Hall, 1996 suggestions/comments to: richard stahl updated on: march 1, 2004