Abstract
Large numerical computations, such as three-dimensional weather or nuclear reaction models, are an important class of codes because of the high-quality scientific results that they produce. However, they are also resource intensive in that they can require the use of multiple processors and/or multiple levels of memory; they are often both computationally intensive and generate a very large amount of data. Partitioning of grid data for efficient transfer among multiple processors or multiple levels of memory may be a key element in the design of efficient codes for large numerical computations. A survey of data organization in such codes is presented, and partitioning schemes that were used are classified. Three classes of partitioning are described, and the relationship between numerical method and data organization is explained. Design strategies and implementation languages for partitioning provide the scientist with tools for code development.
Similar content being viewed by others
References
Alcouffe, R.E. 1977. Diffusion synthetic acceleration methods for the diamond differenced discreteordinates equations. Nuclear Sci. Engineering. 64, 344–355.
Alcouffe, R.E., Brandt, A., Dendy, J.E., Jr., and Painter, J.W. 1980. The multigrid methods for the diffusion equation with strongly discontinuous coefficients. Technical Report LA-UR-80–1463, Los Alamos Scientific Laboratory, University of California, Los Alamos, NM.
Anderson, D.L. 1977. Flow user manual. National Center for Atmospheric Research, Boulder, CO (14 July).
Avila, J.H., and Levine, R.D. 1980. AArc3—an Illiac code for solving three dimensional compressible flow problems. Documentation, Technology Development of California (April).
Basdevant, C. 1983. Technical Improvements for Direct Numerical Simulation of Homogeneous ThreeDimensional Turbulence. Academic Press, New York, pp. 209–213.
Bell, J.L. 1980. Flotran user documentation. National Center for Atmospheric Research, Boulder, CO (19 June).
Bell, J.L. 1983. Data structures for scientific simulation programs. Ph.D. dissertation. Computer Science Department, University of Colorado, Boulder, CO.
Bitner, J.R. 1985. Storing matrices on disk for efficient row and column retrieval. Information Processing Lett. 20, 5 (June), 249–254.
Boris, J.P. 1985. A vectorized “nearest-neighbors” algorithm of order N using a monotonic logical grid. NRL Memorandum Report 5570, Naval Research Laboratory, Washington, DC (29 May).
Brandt, A. 1977a. Multi-level adaptive techniques (mlat) for partial differential equations: ideas and software. In Proceedings, Symposium on Mathematical Software, Mathematics Research Center, University of Wisconsin (Mar.), pp. 277–318.
Brandt, A. 1977b. Multi-level adaptive soultions to boundary-value problems. Math. Comput., 31, 138 (Apr.), 333–390.
Bucher, I.Y., and Jordan, T.L. 1984. Linear algebra programs for use on a vector computer with a secondary solid state storage device. Technical Report LA-UR-84–1676, Los Alamos National Laboratory, Los Alamos, NM.
Buneman, O., Barnes, C.W., Green, J.C., and Niclsen, D.E. 1980. Principles and capabilities of 3-D, E-M particle simulations. J. Comput. Physics. 36, 1 (Nov.), 1–44.
Chervin, R.M. and Patterson, G.S. Jr. 1985. Adaption of a numerical climate model for use on a multiprocessor computer system. Unpublished report. fortran 8x Working Document X3J3/S8. 1985. Version 94 (May). No place or publisher listed. Fritts, M.J. and Boris. J.P. 1979. The Lagrangian solution of transient problems in hydrodynamics using a triangular mesh. J. Comput. Physics. 31, 2 (May), 173–215.
Hallquist, J.O. 1979. Preliminary user's manual for DYNA3D and DYNAP. Lawrence Livermore Laboratory, UC1D-17268 Rev. 1 (Oct).
Hallquist, J.O. 1981. Nike3D: an implicit, finite element code for analyzing the static and dynamic response of three-dimensional solids. Lawrence Livermore Laboratory, UC1D-18822 (Jan.).
Hockney, R.W., and Eastwood, J.W. 1981. Computer Simulation Using Particles. McGraw-Hill, New York.
Lomax, H., and Pulliam, T.H. 1982. A fully implicit, factored code for computing three-dimensional flows for the Illiac IV. In G. Rodrigue (ed.). Parallel Computations. Academic Press, New York.
Moler, C.B. 1972. Matrix computation with fortran and paging. Commun. ACM, 15, 268–270.
Muramatsu, H., and Negishi, H. 1980. Page replacement algorithm for large-array manipulation. Software Pract. Experience. 10, 7 (July), 575–587.
Orszag, S.A. 1972. Comparison of pseudospectral and spectral approximation. Stud. Appl. Math., 51, 253–259.
Perkey, D.J. and Kreitzberg, C.W. 1976. A time-dependent lateral boundary scheme for limited-area primitive equation models. Monthly Weather Rev., 104, 6 (June). 744–755.
Perkey, D.J. 1976. A description and preliminary results from a fine-mesh model for forecasting quantitative precipitation. Monthly Weather Rev., 104, 12 (Dec.), 1513–1526.
Semtner, A.J., Jr. 1974. An oceanographic general circulation model with bottom topography. Numerical Simulation of Weather and Climate Technological Report Number 9, Department of Meteorology, University of California, Los Angeles, CA.
Taylor, R.L., Wilson, E.L., and Sackett, S.J. 1981. Direct solution of equations by frontal and variable band, active column methods. In W. Wunderlich, E. Stein, and K.-J. Bathe (eds.), Nonlinear Finite Element Analysis in Structural Mechanics. Springer-Verlag, Berlin.
Technical Computation Language Reference Manual, draft ed. 1986. Technical Computation Systems, Boulder, CO.
Trac-PD2 reference manual. 1981. Los Alamos Scientific Laboratory, University of California, Los Alamos, NM.
Zalesak, S.T. 1979. Fully multidimensional flux-corrected transport algorithms for fluids. J. Comput. Physics, 31, 3 (June), 335–362.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Bell, J.L., Patterson, G.S. Data organization in large numerical computations. J Supercomput 1, 105–136 (1987). https://doi.org/10.1007/BF00138608
Issue Date:
DOI: https://doi.org/10.1007/BF00138608