Skip to main content

A Hybrid Strategy Based on Data Distribution and Migration for Optimizing Memory Locality

  • Conference paper
Book cover Languages and Compilers for Parallel Computing (LCPC 2002)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 2481))

  • 562 Accesses

Abstract

The performance of a NUMA architecture depends on the efficient use of local memory. Therefore, software-level techniques that improve memory locality (in addition to parallelism) are extremely important to extract the best performance from these architectures. The proposed solutions so far include OS-based automatic data migrations and compiler-based static/dynamic data distributions.

This paper proposes and evaluates a hybrid strategy for optimizing memory locality in NUMA architectures. In this strategy, we employ both compiler-directed data distribution and OS-directed dynamic page migration. More specifically, a given program code is first divided into segments, and then each segment is optimized either using compiler-based data distributions (at compile-time) or using dynamic migration (at runtime). In selecting the optimization strategy to use for a program segment, we use a criterion based on the number of compile-time analyzable references in loops.

To test the effectiveness of our strategy in optimizing memory locality of applications, we implemented it and compared its performance with that of several other techniques such as compiler-directed data distribution and OS-directed dynamic page migration. Our experimental results obtained through simulation indicate that our hybrid strategy outperforms other strategies and achieves the best performance for a set of codes with regular, irregular, and mixed (regular + irregular) access patterns.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Amarasinghe, S., Anderson, J., Lam, M., Tseng, C.-W.: The SUIF compiler for scalable parallel machines. In: Proc. the Seventh SIAM Conference on Parallel Processing for Scientific Computing (February 1995)

    Google Scholar 

  2. Anderson, J., Amarasinghe, S., Lam, M.: Data and computation transformations for multiprocessors. In: Proc. the 5th ACM SIGPLAN Symposium on Principles & Practice of Parallel Programming, Santa Barbara, CA, July 1995, pp. 166–178 (1995)

    Google Scholar 

  3. Chandra, R., Chen, D., Cox, R., Maydan, D., Nedeljkovic, N., Anderson, J.: Data-distribution support on distributed-shared memory multi-processors. In: Proc. the ACM SIGPLAN Conference on Programming Language Design and Implementation, Las Vegas, NV (1997)

    Google Scholar 

  4. Chandra, R., Devine, S., Verghese, B., Gupta, A., Rosenblum, M.: Scheduling and page migration for multiprocessor compute servers. In: Proc. ASPLOS V, October 1994, pp. 12–24 (1994)

    Google Scholar 

  5. Kandemir, M., Choudhary, A., Ramanujam, J., Banerjee, P.: Improving locality using loop and data transformations in an integrated framework. In: Proc. the International Symposium on Microarchitecture, Dallas, TX, December 1998, pp. 285–296 (1998)

    Google Scholar 

  6. LaRowe, R., Ellis, C.: Page placement policies for NUMA multiprocessors. Journal of Parallel and Distributed Computing 11(2) (February 1991)

    Google Scholar 

  7. Laudon, J., Lenoski, D.: The SGI Origin: A CC-NUMA highly scalable server. In: Proc. the 24th Annual International Symposium on Computer Architecture (May 1997)

    Google Scholar 

  8. Li, W.: Compiling for NUMA parallel machines. Ph.D. Thesis, Cornell University, Ithaca, New York (1993)

    Google Scholar 

  9. McKinley, K., Carr, S., Tseng, C.W.: Improving data locality with loop transformations. ACM Transactions on Programming Languages & Systems 18(4), 424–453 (1996)

    Article  Google Scholar 

  10. Verghese, B., Devine, S., Gupta, A., Rosenblum, M.: Operating system support for improving data locality on CC-NUMA compute servers. In: Proc. ASPLOS VII, Cambridge, MA (1996)

    Google Scholar 

  11. Wolf, M., Lam, M.: A data locality optimizing algorithm. In: Proc. the ACMSIGPLAN Conference on Programming Language Design and Implementation, June 1991, pp. 30–44 (1991)

    Google Scholar 

  12. Wolf, M., Maydan, D., Chen, D.: Combining loop transformations considering caches and scheduling. In: Proc. the International Symposium on Microarchitecture, Paris, France, December 1996, pp. 274–286 (1996)

    Google Scholar 

  13. Wolfe, M.: High Performance Compilers for Parallel Computing. Addison-Wesley Publishing Company, Reading (1996)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kadayif, I., Kandemir, M., Choudhary, A. (2005). A Hybrid Strategy Based on Data Distribution and Migration for Optimizing Memory Locality. In: Pugh, B., Tseng, CW. (eds) Languages and Compilers for Parallel Computing. LCPC 2002. Lecture Notes in Computer Science, vol 2481. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11596110_8

Download citation

  • DOI: https://doi.org/10.1007/11596110_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-30781-5

  • Online ISBN: 978-3-540-31612-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics