Abstract
False sharing is a result of co-location of unrelated data in the same unit of memory coherency, and is one source of unnecessary overhead being of no help to keep the memory coherency in multiprocessor systems. Moreover, the damage caused by false sharing becomes large in proportion to the granularity of memory coherency. To reduce false sharing in page-based DSM systems, it is necessary to allocate unrelated data objects that have different access patterns into the separate shared pages. In this paper we propose call-site tracing-based shared memory allocator, shortly CSTallocator. CSTallocator expects that the data objects requested from the different call-sites may have different access patterns in the future. So CSTallocator places each data object requested from the different call-sites into the separate shared pages, and consequently data objects that have the same call-site are likely to get together into the same shared pages. We use execution-driven simulation of real parallel applications to evaluate the effectiveness of our CSTallocator. Our observations show that our CSTallocator outperforms the existing dynamic shared memory allocator.
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
Tanenbaum, A.S.: Distributed Operating Systems, ch. 6, pp. 333–345. Prentice Hall, Englewood Cliffs (1995)
Lee, J., Cho, Y.: Page Replication Mechanism using Adjustable DELAY Counter in NUMA Multiprocessors. Journal of the Korean Institute of Telematics and Electronics B 33B(6), 23–33 (1996)
Torrellas, J., Lam, M.S., Hennessy, J.L.: Shared Data Placement Optimizations to Reduce Multiprocessor Cache Miss Rates. In: Proceedings of the 1990 International Conference on Parallel Processing, vol. II(Software), pp. 266–270 (August 1990)
Eggers, S.J., Jeremiassen, T.E.: Eliminating False Sharing. In: Proceedings of the 1991 International Conference on Parallel Processing, vol. I (Architecture), pp. 377–381 (August 1991)
Lee, J., Cho, Y.: Shared Memory Allocation Mechanism for Reducing False Sharing in Non-Uniform Memory Access Multiprocessors. Journal of Korean Information Science Society(A): Computer Systems and Theory 23(5), 487–497 (1996)
Lee, J.W., Cho, Y.: An Effective Shared Memory Allocator for Reducing False Sharing in NUMA Multiprocessors. In: Proceedings of 1996 IEEE 2nd International Conference on Algorithms & Architectures for Parallel Processing(ICA3PP 1996), pp. 373–382 (June 1996)
Adema, R.L., Ellis, C.S.: Memory Allocation Constructs to Complement NUMA Memory Management. In: Proceedings of the 3rd IEEE Symposium on Parallel and Distributed Processing (December 1991)
Lee, J., Kim, M., Han, J., Ji, D., Yoon, J., Kim, J.: Effects of Dynamic Shared Memory Allocation Techniques on False Sharing in DSM Systems. Journal of Korean Information Science Society(A): Computer Systems and Theory 24(12), 1257–1269 (1997)
Han, B., Cho, S., Cho, Y.: Techniques for Eliminating False Sharing and Reducing Communication Traffic in Distributed Shared Memory Systems. Journal of Korean Information Science Society(A) 25(10), 1100–1108 (1998)
Veenstra, J.E.: MINT Tutorial and User Manual. Technical Report TR452, Computer Science Department, University of Rochester (July 1993)
Veenstra, J.E., Fowler, R.J.: MINT: A Front End for Efficient Simulation of Shared-Memory Multiprocessors. In: Proceedings of the Second International Workshop on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS 1994), pp. 201–207 (January-February 1994)
Singh, J.P., Weber, W., Gupta, A.: SPLASH: Stanford Parallel Applications for Shared-Memory. ACM SIGARCH Computer Architecture News 20(1), 5–44 (1992)
Woo, S.C., Ohara, M., Torrie, E., Singh, J.P., Gupta, A.: The SPLASH2 Programs: Characterization and Methodological Considerations. In: Proceedings of the 22nd Annual International Symposium on Computer Architecture, pp. 24–36 (June 1995)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lee, J., Kim, SD., Lee, J.W., O, J. (2006). CSTallocator: Call-Site Tracing Based Shared Memory Allocator for False Sharing Reduction in Page-Based DSM Systems. In: Gerndt, M., Kranzlmüller, D. (eds) High Performance Computing and Communications. HPCC 2006. Lecture Notes in Computer Science, vol 4208. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11847366_16
Download citation
DOI: https://doi.org/10.1007/11847366_16
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-39368-9
Online ISBN: 978-3-540-39372-6
eBook Packages: Computer ScienceComputer Science (R0)