Browse > Article
http://dx.doi.org/10.3745/JIPS.01.0005

The Accuracy of the Non-continuous I Test for One-Dimensional Arrays with References Created by Induction Variables  

Zhang, Qing (Dalian Shipping College, Economic and Technological Development Zone)
Publication Information
Journal of Information Processing Systems / v.10, no.4, 2014 , pp. 523-542 More about this Journal
Abstract
One-dimensional arrays with subscripts formed by induction variables in real programs appear quite frequently. For most famous data dependence testing methods, checking if integer-valued solutions exist for one-dimensional arrays with references created by induction variable is very difficult. The I test, which is a refined combination of the GCD and Banerjee tests, is an efficient and precise data dependence testing technique to compute if integer-valued solutions exist for one-dimensional arrays with constant bounds and single increments. In this paper, the non-continuous I test, which is an extension of the I test, is proposed to figure out whether there are integer-valued solutions for one-dimensional arrays with constant bounds and non-sing ularincrements or not. Experiments with the benchmarks that have been cited from Livermore and Vector Loop, reveal that there are definitive results for 67 pairs of one-dimensional arrays that were tested.
Keywords
Data Dependence Analysis; Loop Parallelization; Loop Vectorization; Parallelizing/Vectorizing Compilers;
Citations & Related Records
연도 인용수 순위
  • Reference
1 W. L. Chang and C. P. Chu, "The generalized direction vector I test," Parallel Computing, vol. 27, no. 8, pp. 1117-1144, 2001.   DOI   ScienceOn
2 W. L. Chang, C. P. Chu, and J. H. Wu, "A multi-dimensional version of the I test," Parallel Computing, vol. 27, no. 13, pp. 1783-1799, 2001.   DOI   ScienceOn
3 J. Hoeflinger and Y. Paek, "A comparative analysis of dependence testing mechanisms," in Proceedings of the 13th International Workshop on Languages and Compilers for Parallel Computing (LCPC2000), Yorktown Heights, NY, 2001, pp. 289-303.
4 W. L. Chang, C. P. Chu, and J. H. Wu, "A multi-dimensional direction vector I test," Journal of System and Software (Accepted).
5 D. Levine, D. Callahan, and J. Dongarra, "A comparative study of automatic vectorizing compilers," Parallel Computing, vol. 17, no. 10, pp. 1223-1244, 1991.   DOI
6 W. Blume and R. Eigenmann, "Performance analysis pf parallelizing compilers on the Perfect Benchmarks programs," IEEE Transactions on Parallel and Distributed Systems, vol. 3, no. 6, pp. 643-656, 1992.   DOI   ScienceOn
7 P. M. Petersen and D. A. Padua, "Static and dynamic evaluation of data dependence analysis techniques," IEEE Transactions on Parallel and Distributed Systems, vol. 7, no. 11, pp. 1121-1132, 1996.   DOI   ScienceOn
8 K. Psarris and K. Kyriakopoulos, "An experimental evaluation of data dependence analysis techniques," IEEE Transactions on Parallel and Distributed Systems, vol. 15, no. 3, pp. 196-213, 2004.   DOI   ScienceOn
9 Y. Paek, "Compiling for distributed memory multiprocessors based on access region analysis," Ph.D. dissertation, University of Illinois at Urbana-Champaign, IL, 1997.
10 K. Psarris, X. Kong, and D. Klappholz, "The direction vector I test," IEEE Transactions on Parallel and Distributed Systems, vol. 4, no. 11, pp. 1280-1290, 1993.   DOI   ScienceOn
11 K. Psarris and K. Kyriakopoulos, "Data dependence testing in practice," in Proceedings of the International Conference on Parallel Architectures and Compilation Techniques, Newport, Beach, CA, 1999, pp. 264-273.
12 D. Niedzielski and K. Psarris, "An analytical comparison of the I-test and Omega test," in Proceedings of the 12th International Workshop on Languages and Compilers for Parallel Computing (LCPC1999), La Jolla, CA, 1999, pp. 251-270.
13 B. T. Smith, J. M. Boyle, and J. J. Dongarra, Matrix Eigensystem Routines-EISPACK Guide, 2nd ed. Heidelberg: Springer, 1976.
14 D. E. Knuth, The Art of Computer Programming, Volume 2: Seminumerical Algorithms, 2nd ed. Reading, MA: Addison-Wesley, 1981.
15 W. L. Chang and C. P. Chu, "The extension of the I test," Parallel Computing, vol. 24, no. 14, pp. 2101-2127, 1998.   DOI   ScienceOn
16 W. L. Chang, C. P. Chu, and J. Wu, "The generalized lambda test: a multi-dimensional version of Banerjee's algorithm," International Journal of Parallel and Distributed Systems and Networks, vol. 2, no. 2, pp. 69-78, 1999.
17 T. C. Huang and C. M. Yang, "Data dependence analysis for array references," Journal of Systems and Software, vol. 52, no. 1, pp. 55-65, 2000.   DOI   ScienceOn
18 J. Dongarra, M. Furtney, S. Reinhardt, and J. Russell, "Parallel Loops: a test suite for parallelizing compilers: description and example results," Parallel Computing, vol. 17, no, 10, pp. 1247-1255, 1991.   DOI
19 W. L. Chang, J. W. Huang, and C. P. Chu, "The non-continuous I test: an improved dependence test for reducing complexity of source level debugging for parallel compilers," in Proceedings of the 3rd International Conference on Parallel and Distributed Computing, Applications and Technologies (PDCAT2002), Kanazawa, Japan, 2002, pp. 455-462.
20 J. P. Hoeflinger, "Interprocedural parallelization using memory classification analysis," Ph.D. dissertation, University of Illinois at Urbana-Champaign, IL, 1998.
21 K. Psarris, D. Klappholz, and X. Kong, "On the accuracy of the Banerjee test," Journal of Parallel and Distributed Computing, vol. 12, no. 2, pp. 152-157, 1991.   DOI   ScienceOn
22 W. Pugh, "A practical algorithm for exact array dependence analysis," Communications of the ACM, vol. 35, no. 8, pp. 102-114, 1992.   DOI
23 M. Wolfe and C. W. Tseng, "The power test for data dependence," IEEE Transactions on Parallel and Distributed Systems, vol. 3, no. 5, pp. 591-601, 1992.   DOI   ScienceOn
24 W. J. Vaughan "A residuals management model of the iron and steel industry: a linear programming approach," Ph.D. dissertation, Georgetown University, Washington, DC, 1975.
25 R. Triolet, F. Irigoin, and P. Feautrier, "Direct parallelization of call statements," in Proceedings of the SIGPLAN Symposium on Compiler Construction, Palo Alto, CA, 1986, pp. 176-185.
26 X. Kong, D. Klappholz, and K. Psarris, "The I test: an improved dependence test for automatic parallelization and vectorization," IEEE Transactions on Parallel and Distributed Systems, vol. 2, no. 3, pp. 342-349, 1991.   DOI   ScienceOn
27 Z. Shen, Z. Li, and P. C. Yew, "An empirical study of Fortran programs for parallelizing compilers," IEEE Transactions on Parallel and Distributed Systems, vol. 1, no. 3, pp. 356-364, 1990.   DOI   ScienceOn
28 P. M. Petersen, "Evaluation of programs and parallelizing compilers using dynamic analysis techniques," Ph.D. dissertation, University of Illinois at Urbana-Champaign, IL, 1993.
29 U. Banerjee, Loop Transformations for Restructuring Compilers: The Foundations. Boston, MA: Kluwer Academic Publishers, 1993.
30 U. Banerjee, Dependence Analysis. Boston, MA: Kluwer Academic Publishers, 1997.
31 C. I. Jaramillo, "Source level debugging techniques and tools for optimized code," Ph.D. dissertation, University of Pittsburgh, PA, 2000.
32 W. Blume and R. Eigenmann, "Nonlinear and symbolic data dependence testing," IEEE Transactions on Parallel and Distributed Systems, vol. 9, no. 12, pp. 1180-1194, 1998.   DOI   ScienceOn
33 U. Banerjee, Dependence Analysis for Supercomputing. Boston, MA: Kluwer Academic Publishers, 1988.
34 Z. Li, P. C. Yew, and C. Q. Zhu, "An efficient data dependence analysis for parallelizing compilers," IEEE Transactions on Parallel and Distributed Systems, vol. 1, no. 1, pp. 26-34, 1990.   DOI   ScienceOn
35 R. Eigenmann, J. Hoeflinger, and D. Padua, "On the automatic parallelization of the Perfect Benchmarks (R)," IEEE Transactions on Parallel and Distributed Systems, vol. 9, no. 1, pp. 5-23 1998.   DOI   ScienceOn