This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Integer Programming for Array Subscript Analysis
June 1995 (vol. 6 no. 6)
pp. 662-668

Abstract—We present a new method to determine whether a convex region contains any integer points. The method is designed for array subscript analysis in parallel programs. The general problem is whether a system of linear equalities and inequalities has an integer solution. A set of known techniques is used to transform the problem to that of finding whether a convex region contains any integer points. The main result of the paper is a set of new search procedures that identify an integer solution in a convex region, or prove that no integer solutions exist. They are based on the geometrical properties of convex regions that are not empty, but also do not contain any integer points. The results contribute to exact and efficient dependence and synchronization analysis of parallel programs.

Index Terms—Subscript analysis, dependence testing, integer programming, parallelizing compilers, parallel program analysis, synchronization analysis.

[1] R. Allen and K. Kennedy,“Automatic translation of FORTRAN programs to vector form,”ACM Trans. Programm. Lang., Syst. 9, pp. 491–542, Oct. 1987.
[2] U. Banerjee,Dependence Analysis for Supercomputing. Norwell, MA: Kluwer, 1988.
[3] D. Callahan, K. Kennedy, and J. Subhlok,“Analysis of event synchronization in a parallel programming tool,”inProc. 2nd ACM SIGPLAN Symp. Princip. Practice Parallel Programm., Seattle, WA, Mar. 1990.
[4] R. J. Duffin,“On Fourier's analysis of linear inequality systems,”Mathematical Programm. Study 1, pp. 71–95, 1974.
[5] P. Feautrier,“Parametric integer programming,”Recherche Operationnelle 22, pp. 243–268, Sept. 1988.
[6] S. D. Feit,“A fast algorithm for the two-variable integer programming problem,”J. ACM 33pp. 99–113, Jan. 1984.
[7] R. Garfinkel and G. Nemhauser,Integer Programming. New York: Wiley, 1972.
[8] A. Kaufmann and A. Henry-Labordere,Integer and Mixed Programming. New York: Academic, 1977.
[9] D. Maydan, J. Hennessy, and M. Lam,“Efficient and exact data dependence analysis,”inProc. ACM SIGPLAN 91' Conf. Progr. Lang. Des., Implement., Toronto, Canada, June 1991, pp. 1–14.
[10] W. Pugh,“The Omega test: A fast and practical integer programming algorithm for dependence analysis,”inProc. Supercomput. '91, Albuquerque, NM, Nov. 1991, pp. 4–13.
[11] H. Smith,“On systems of linear indeterminate equations and congruences,”Philosophical Trans. Royal Soc. London A, vol. 151, pp. 293–326, 1861.
[12] J. Subhlok,“Solving integer programs from dependence and synchronization problems,”Tech. Rep. CMU-CS-93-130, School of Comput. Sci., Carnegie Mellon Univ., 1993.
[13] M. Wolfe,“Optimizing Supercompilers for Supercomputers,”Ph.D. dissertation, Dep. Comput. Sci., Univ. Illinois at Urbana-Champaign, 1982.
[14] M. Wolfe and C. Tseng,“The power test for data dependence,”IEEE Trans. Parallel Distrib. Syst. 3, pp. 591–601, Sept. 1992.

Citation:
Jaspal Subhlok, Ken Kennedy, "Integer Programming for Array Subscript Analysis," IEEE Transactions on Parallel and Distributed Systems, vol. 6, no. 6, pp. 662-668, June 1995, doi:10.1109/71.388048
Usage of this product signifies your acceptance of the Terms of Use.