
This Article  
 
Share  
Bibliographic References  
Add to:  
Digg Furl Spurl Blink Simpy Del.icio.us Y!MyWeb  
Search  
 
ASCII Text  x  
L.J. Hendren, A. Nicolau, "Parallelizing Programs with Recursive Data Structures," IEEE Transactions on Parallel and Distributed Systems, vol. 1, no. 1, pp. 3547, January, 1990.  
BibTex  x  
@article{ 10.1109/71.80123, author = {L.J. Hendren and A. Nicolau}, title = {Parallelizing Programs with Recursive Data Structures}, journal ={IEEE Transactions on Parallel and Distributed Systems}, volume = {1}, number = {1}, issn = {10459219}, year = {1990}, pages = {3547}, doi = {http://doi.ieeecomputersociety.org/10.1109/71.80123}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, }  
RefWorks Procite/RefMan/Endnote  x  
TY  JOUR JO  IEEE Transactions on Parallel and Distributed Systems TI  Parallelizing Programs with Recursive Data Structures IS  1 SN  10459219 SP35 EP47 EPD  3547 A1  L.J. Hendren, A1  A. Nicolau, PY  1990 KW  Index Termsautomatic parallelization; disambiguation techniques; parallelizing compilers; parallel programming languages; recursive data structures; interference; imperative language; dynamic data structures; interference analysis tools; parallelization techniques;imperative programs; dynamically updatable trees; directed acyclic graphs; regularexpressionlike representation; accessible nodes; data structures; directed graphs; parallel programming; program compilers; trees (mathematics) VL  1 JA  IEEE Transactions on Parallel and Distributed Systems ER   
A study is made of the problem of estimating interference in an imperative language with dynamic data structures. The authors focus on developing efficient and implementable methods for recursive data structures. In particular, they present interference analysis tools and parallelization techniques for imperative programs that contain dynamically updatable trees and directed acyclic graphs. The analysis methods are based on a regularexpressionlike representation of the relationship between accessible nodes in the data structure. They authors have implemented their analysis, and they present some concrete examples that have been processed by this system.
[1] R. Allen and K. Kennedy, "Automatic translation of FORTRAN to vector form,"ACM Trans. Programming Languages Syst., vol. 9, no. 4, pp. 491524, 1987.
[2] U. Banerjee, "Speedup of ordinary programs," Ph.D dissertation, Dep. Comput. Sci. Univ. Illinois, UrbanaChampaign, Rep. No. UIUCDCSR79989, 1979.
[3] J. P. Banning, "An efficient way to find the side effects of procedure calls and the aliases of variables," inProc. 6th POPL Conf., ACM, pp. 724736, 1979.
[4] J. M. Barth, "A practical interprocedural dataflow analysis algorithm,"Comm. Assoc. Computing Machinery, vol. 21, no. 9, pp. 724726, Sept. 1978.
[5] G. Bilardi and A. Nicolau, "Adaptive bitonic sorting: An optimal parallel algorithm for sharedmemory machines,"SIAM J. Computing, vol. 18, no. 2, pp. 216228, 1989.
[6] M. Burke and R. Cytron, "Interprocedural dependence analysis and parallelization," inProc. SIGPLAN '86 Symp. Comp. Construct., Palo Alto, CA, June 1986, pp. 162175.
[7] L. J. Hendren, "Recursive data structures and parallelism detection,"Tech. Rep.TR 88924, Cornell Univ., Ithaca, NY, June 1988.
[8] L. J. Hendren and A. Nicolau, "Interference analysis tools for parallelizing programs with recursive data structures," inProc. Internat. Conf. Supercomputing, June 1989, pp. 205214.
[9] L. J. Hendren and A. Nicolau, "Parallelizing programs with recursive data structures," inProc. Internat. Conf. Parallel Process., vol. II, Software, Aug. 1989, pp. 4956.
[10] S. Horwitz, P. Pfeiffer, and T. Reps, "Dependence analysis for pointer variables," inProc. SIGPLAN '89 Conf. Program. Lang. Design and Implement., June 1989, pp. 2840.
[11] P. Hudak, "A semantic model of reference counting and its abstraction," inAbstract Interpretation of Declarative Languages, S. Abramsky and C. Hankin, Eds. West Sussex, UK: Ellis Horwood, 1987, pp. 4562.
[12] N. D. Jones and S. Muchnick, "A flexible approach to interprocedural data flow analysis and programs with recursive data structures," in9th ACM Symp. Principles Program. Lang., 1982, pp. 6674.
[13] N. D. Jones and S. Muchnick, "Flow analysis and optimization of LISPlike structures," inProgram Flow Analysis, Theory, and Applications. Englewood Cliffs, NJ: Prentice Hall, 1981, ch. 4, pp. 102131.
[14] J. R. Larus and P. N. Hilfinger, "Detecting conflicts between structure accesses," inProc. SIGPLAN '88 Conf. Program. Lang. Design and Implement., June 1988, pp. 2134.
[15] J. R. Larus and P. N. Hilfinger, "Restructuring Lisp programs for concurrent execution," inProc. ACM/SIGPLAN PPEALS 1988Parallel Program.: Experience with Appl., Lang., Syst., July 1988, pp. 100110.
[16] J. M. Lucassen, "Types and effects: Towards the integration of functional and imperative programming," PhD dissertation, M.I.T.. Cambridge, MA, 1987.
[17] J. M. Lucassen and D. K. Gifford,"Polymorphic effect systems." inProc. 15th ACM Symp. Principles Program. Lang., 1988, pp. 47 57.
[18] A. Neirynck, "Static analysis of aliasing and side effects in higherorder languages," Ph.D. dissertation, Cornell Univ., Ithaca, NY. Jan. 1988.
[19] A. Neirynck, P. Panangaden, and A. J. Demers, "Computation of aliases and support sets," inProc. 14th ACM Symp. Principles Program. Lang., 1987, pp. 274283.
[20] A. Nicolau, "Parallelism, memory antialiasing and correctness for trace scheduling compilers," Ph.D. dissertation, Yale Univ., June 1984.
[21] D. A. Padua and M. J. Wolfe, "Advanced compiler optimizations for supercomputers,"Common. ACM, vol. 29, no. 12, pp. 1184 1201, Dec. 1986.
[22] C. Ruggieri and T. P. Murtagh, "Lifetme analysis of dynamically allocated objects," inProc. 15th ACM Symp. Principles Program. Lang., 1988, pp. 285293.
[23] M. J. Wolfe, "Optimizing supercompilers for supercomputers," Ph.D. thesis, Ctr. Supercomput. Res. and Development, Univ. Illinois, UrbanaChampaign, 1980.