Abstract
Multi-dimensional integrals of products of several arrays arise in certain scientific computations. In the context of these integral calculations, this paper addresses a memory usage minimization problem. Based on a framework that models the relationship between loop fusion and memory usage, we propose an algorithm for finding a loop fusion configuration that minimizes memory usage. A practical example shows the performance improvement obtained by our algorithm on an electronic structure computation.
Supported in part by the National Science Foundation under grant DMR-9520319.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
W. Aulbur, Parallel implementation of quasip article calculations of semiconductors and insulators Ph.D. Dissertation, Ohio State University, Columbus, October 1996.
S. Chatterjee, J. R. Gilbert, R. Schreiber, and S.-H. Teng, Automatic array alignment in data-parallel programs, 20th Annual ACM SIGACTS/SIGPLAN Symposium on Principles of Programming Languages, New York, pp. 16–28, 1993.
S. Chatterjee, J. R. Gilbert, R. Schreiber, and S.-H. Teng, Optimal evaluation of array expressions on massively parallel machines, ACM TOPLAS, 17(1), pp. 123–156, Jan. 1995.
C. N. Fischer and R. J. LeBlanc Jr, Crafting a compiler, Menlo Park, CA: Benjamin/Cummings, 1991.
L. J. Guibas and D. K. Wyatt, Compilation and Delayed Evaluation in APL, Fifth Annual ACM Symposium on Principles of Programming Languages, Tucson, Arizona, pp. 1–8, Jan. 1978.
G. Gao, R. Olsen, V. Sarkar, and R. Thekkath, Collective loop fusion for array contraction, Languages and Compilers for Parallel Processing, New Haven, CT, August 1992.
M. S. Hybertsen and S. G. Louie, Electronic correlation in semiconductors and insulators: band gaps and quasiparticle energies, Phys. Rev. B, 34 (1986), pp. 5390.
K. Kennedy and K. S. McKinley, Maximizing loop parallelism and improving data locality via loop fusion and distribution, Languages and Compilers for Parallel Computing, Portland, OR, pp. 301–320, August 1993.
C. Lam, D. Cociorva, G. Baumgartner, and P. Sadayappan, Memory-optimal evaluation of expression trees involving large objects, Technical report no. OSU-CISRC-5/99-TR13, Dept. of Computer and Information Science, The Ohio State University, May 1999.
C. Lam, P. Sadayappan, and R. Wenger, On optimizing a class of multi-dimensional loops with reductions for parallel execution, Parallel Processing Letters, Vol. 7 No. 2, pp. 157–168, 1997.
C. Lam, P. Sadayappan, and R. Wenger, Optimization of a class of multi-dimensional integrals on parallel machines, Eighth SIAM Conference on Parallel Processing for Scientific Computing, Minneapolis, MN, March 1997.
C. Lam, P. Sadayappan, D. Cociorva, M. Alouani, and J. Wilkins, Performance optimization of a class of loops involving sums of products of sparse arrays, Ninth SIAM Conference on Parallel Processing for Scientific Computing, San Antonio, TX, March 1999.
C. Lam, Performance optimization of a class of loops implementing multi-dimensional integrals, Technical report no. OSU-CISRC-8/99-TR22, Dept. of Computer and Information Science, The Ohio State University, Columbus, August 1999.
N. Manjikian and T. S. Abdelrahman, Fusion of Loops for Parallelism and Locality, International Conference on Parallel Processing, pp. II:19–28, Oconomowoc, WI, August 1995.
H. N. Rojas, R. W. Godby, and R. J. Needs, Space-time method for Abinitio calculations of self-energies and dielectric response functions of solids, Phys. Rev. Lett., 74 (1995), pp. 1827.
S. Singhai and K. MacKinley, Loop Fusion for Data Locality and Parallelism, Mid-Atlantic Student Workshop on Programming Languages and Systems, SUNY at New Paltz, April 1996.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lam, CC., Cociorva, D., Baumgartner, G., Sadayappan, P. (2000). Optimization of Memory Usage Requirement for a Class of Loops Implementing Multi-dimensional Integrals. In: Carter, L., Ferrante, J. (eds) Languages and Compilers for Parallel Computing. LCPC 1999. Lecture Notes in Computer Science, vol 1863. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44905-1_22
Download citation
DOI: https://doi.org/10.1007/3-540-44905-1_22
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67858-8
Online ISBN: 978-3-540-44905-8
eBook Packages: Springer Book Archive