This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Run-Time Disambiguation: Coping with Statically Unpredictable Dependencies
May 1989 (vol. 38 no. 5)
pp. 663-678
A technique called run-time disambiguation (RTD) is presented for antialiasing of indirect memory references that cannot normally be disambiguated at compile time. The technique relies on assumptions about the run-time behavior of a program to allow static transformations of the code, in an effort to extract parallelism. The importance of the technique lies in its ability to supplement (and eve

[1] A. V. Aho, R. Sethi, and J. D. Ullman,Compilers: Principles, Techniques, and Tools. Reading, MA: Addison-Wesley, 1986.
[2] R. Allen and K. Kennedy, "PFC: A program to convert Fortran to parallel form," Tech. Rep. MASC-TR 82-6, Dep. Math. Sci., Rice Univ., Mar. 1982.
[3] Arvind and V. Kathail, "A multiple processor data flow machine that supports generalized procedures," inProc. 8th Int. Symp. Comput. Architecture, May 1981.
[4] U. Banerjee, "Speedup of ordinary programs," Tech. Rep. UIUCDS-R-79-989, Dep. Comput. Sci., Univ. Illinois, Oct. 1979.
[5] J. B. Dennis,First Version of a Data Flow Procedure Language. New York: Springer-Verlag, Apr. 1974, pp. 362-376.
[6] J. R. Ellis, "Bulldog: A compiler for VLIW architectures," Ph.D. dissertation, Dep. Comput. Sci., Yale University.
[7] J. R. Ellis, J. A. Fisher, J. C. Ruttenberg, and A. Nicolau, "Parallel processing: A smart compiler and a dumb machine," inProc. SIGPLAN 84 Symp. Compiler Construction, ACM SIGPLAN Notices, June 1984.
[8] J. A. Fisher, "Trace scheduling: A technique for global microcode compaction,"IEEE Trans. Comput., pp. 478-490, July 1981.
[9] W. Harrison, "Compiler analysis of the value range for variables,"IEEE Trans. Software Eng., vol. 3, 1977.
[10] R. W. Heuft and W. D. Little, "Improved time and parallel processor bounds for Fortran-like loops,"IEEE Trans. Comput., vol. C-31, no. 1, 1982.
[11] D. J. Kuck, Y. Muraoka, and S. C. Chen, "On the number of operations simultaneously executable in Fortran-like programs and their resulting speedup,"IEEE Trans. Comput., no. 12, pp. 1293- 1310, 1972.
[12] D. J. Kuck, "Parallel processing of ordinary programs,"Advances Comput., vol. 15, pp. 119-179, 1976.
[13] D. J. Kuck, R.H. Kuhn, B. Leasure, D.A. Padua, and M. Wolfe, "Compiler transformation of dependence graphs," inConf. Rec. 8th ACM Symp. Principles Program. Languages, Williamsburg, VA, Jan. 1981.
[14] A. Nicolau, "Parallelism, memory anti-aliasing and correctness for trace scheduling compilers," Ph.D. dissertation, Yale Univ., June 1984.
[15] A. Nicolau, "Uniform parallelism exploitation in ordinary programs," inProc. 1985 Int. Conf. Parallel Processing, IEEE, ACM, St. Charles, IL. Aug. 1985.
[16] A. Nicolau and J. Fisher, "Measuring the parallelism available for very long instruction word architectures,"IEEE Trans. Comput., Nov. 1984.
[17] G. S. Tadjen and M. J. Flynn, "Detection and parallel execution of independent instructions,"IEEE Trans. Comput., vol. 19, pp. 889- 899, Oct. 1970.
[18] R. M. Tomasulo, "An efficient algorithm for exploiting multiple arithmetic units,"IBM J. Res. Develop., vol. 11, pp. 25-33, Jan. 1967.
[19] M. J. Wolfe, "Optimizing supercompilers for supercomputers," Ph.D. thesis, Ctr. Supercomput. Res. and Development, Univ. Illinois, Urbana-Champaign, 1980.

Index Terms:
statically unpredictable dependencies; run-time disambiguation; RTD; antialiasing; indirect memory references; compile time; run-time behavior; static transformations; code; parallelism; static dependency analysis; memory disambiguation; Bulldog compiler; program compilers.
Citation:
A. Nicolau, "Run-Time Disambiguation: Coping with Statically Unpredictable Dependencies," IEEE Transactions on Computers, vol. 38, no. 5, pp. 663-678, May 1989, doi:10.1109/12.24269
Usage of this product signifies your acceptance of the Terms of Use.