Skip to main content

Locality optimization for program instances

  • Workshop on Biologically Inspired Solutions to Parallel Processing Problems Albert Y. Zomaya, The University of Western Australia Fikret Ercal, University of Missouri-Rolla Stephan Olariu, Old Dominion Univesity
  • Conference paper
  • First Online:
Parallel and Distributed Processing (IPPS 1998)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1388))

Included in the following conference series:

  • 107 Accesses

Abstract

The degree of locality of a program reflects the level of temporal and spatial concentration of related data and computations. Locality optimization can speed up programs by reducing the communication costs. A possible human approach to locality optimization is to consider several small program instances of a given program, find optimal or close to optimal mappings of data and computations for the program instances, and generalize them to the program.

This paper suggests the use of this approach in a semi-automatic locality optimization method. Emphasis is given to the phase of optimizing the program instances. We introduce a fuzzy objective function that reflects the degree of locality of a program instance, and show its advantages over a crisp function such as communication costs. We provide a framework for applying several optimization techniques and describe an implementation that uses local search. The paper refers to a two-level memory hierarchy.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. J.M. Anderson, S.P. Amarasinghe, M.S. Lam: Data and Computation Transformations for Multiprocessors. Proc. ACM SIGPLAN Symp. on Principles and Practice of Parallel Programming, pp. 166–178, 1995

    Google Scholar 

  2. M. Cierniak, W. Li: Unifying Data and Control Transformations for Distributed Shared Memory Machines. Proc. ACM SIGPLAN'95 Conf. on Programming Language Design and Implementation, pp.205–217, 1995

    Google Scholar 

  3. Y. Crama, A.W.J. Kolen, E.J. Pesch: Local Search in Combinatorial Optimization. Artificial Neural Networks, LNCS 931, pp. 157–174, 1991

    Google Scholar 

  4. K. Dussa-Zieger: Configuration, Mapping and Sequencing by Genetic Algorithms. Proc. Int. Workshop on Approximate Reasoning in Scheduling, ICSC Press, pp. 11–17, 1997

    Google Scholar 

  5. H. El-Rewini, T.G. Lewis, H.H. Ali: Task Scheduling in Parallel and Distributed Systems. Prentice Hall, 1994

    Google Scholar 

  6. M. Kandemir, J. Ramanujam, A. Choudhary: A Compiler Algorithm for Optimizing Locality in Loop Nests. Proc. ACM Int. Conf. on Supercomputing, pp. 269–276, 1997

    Google Scholar 

  7. A. LaMarca, R.E. Ladner: The Influence of Caches on the Performance of Sorting. Proc. ACM SIGPLAN Symp. on Discrete Algorithms, pp. 370–379, 1997

    Google Scholar 

  8. J.S. Vitter, E.A.M. Shriven Algorithms for Parallel Memory I: Two-Level Memories. Algorithmica, Vol. 12, No. 2/3, pp. 110–147, 1994

    Article  Google Scholar 

  9. M.E. Wolf, M.S. Lam: A Data Locality Optimizing Algorithm. Proc. ACM SIGPLAN'91 Conf. on Programming Language Design and Implementation, pp. 30–44, 1991

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

José Rolim

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Leopold, C. (1998). Locality optimization for program instances. In: Rolim, J. (eds) Parallel and Distributed Processing. IPPS 1998. Lecture Notes in Computer Science, vol 1388. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-64359-1_692

Download citation

  • DOI: https://doi.org/10.1007/3-540-64359-1_692

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-64359-3

  • Online ISBN: 978-3-540-69756-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics