Reducing False Sharing based on Memory Reference Patterns in Distributed Shared Memory Systems

분산 공유 메모리 시스템에서 메모리 참조 패턴에 근거한 거짓 공유 감속 기법

  • Published : 2000.04.01

Abstract

In Distributed Shared Memory systems, false sharing occurs when two different data items, not shared but accessed by two different processors, are allocated to a single block and is an important factor in degrading system performance. The paper first analyzes shared memory allocation and reference patterns in parallel applications that allocate memory for shared data objects using a dynamic memory allocator. The shared objects are sequentially allocated and generally show different reference patterns. If the objects with the same size are requested successively as many times as the number of processors, each object is referenced by only a particular processor. If the objects with the same size are requested successively much more than the number of processors, two or more successive objects are referenced by only particular processors. On the basis of these analyses, we propose a memory allocation scheme which allocates each object requested by different processors to different pages and evaluate the existing memory allocation techniques for reducing false sharing faults. Our allocation scheme reduces a considerable amount of false sharing faults for some applications with a little additional memory space.

Keywords

References

  1. K. Li and P. Hudak. 'Memory Coherence in Shared Virtual Memory Systems,' ACM Transactions on Computer Systerns, Vol 7, pp.321-359, Nov. 1989 https://doi.org/10.1145/75104.75105
  2. M. Stumm and S Zhou, 'Algorithms Implementing Distributed Shared Memory,' IEEE Computer, pp.54-64, May ]990 https://doi.org/10.1109/2.53355
  3. A. S Tanenbaum, Distributed Operating Systems, Chapter 6, Prentice- Hall, 1995
  4. O. E. Theel and B D Fleisch, 'A Dynamic Coherence Protocol for Distributed Shared Memory Enforcing High Data Availabiliiv at Low Costs,' IEEE Trans on Parallel and Distributed Systems, 7(9) : 915-930, September 1996 https://doi.org/10.1109/71.536936
  5. R. Chow and T. Johnson. Distributed Operating Systems & Algorithms, Chapter 7, Addison-Wesley. 1997
  6. R. Bianchini, T. J. LeBlanc. and J. Veenstra, 'Eliminating Useless Message in Write-Update Protocols on Scalable Multiprocessors,' Technical report. 539, Univ. of Rochester, Dept. of Computer Science, October 1994
  7. W. J. Bolosky and M. L. Scott, 'False Sharing and its Effect on Shared Memory Performance,' Proceedings of the USENIX Symposium on Experience with Distributed and Multiprocessor Systems(SEDMS IV), pp 57-71. September 1993
  8. S. J. Eggers and T. E. Jeremiassen, 'Eliminating False Sharing,' Proceedings of the 1991 Int'I Conf. on Parallel Processing, Vol.I.(Architecture), pp 377-381, August 1991
  9. J. W. Lee and Y. Cho, 'An Effective Shared Memory Allocator for Reducing False Sharing un NUMA Multiprocessors.' Proceedings of 1996 IEEE 2nd Int'l Conf. on Algorithms & Architectures for Parallel Processing(ICA3PP '96), pp.373-382, June 1996
  10. M. Dubois, J. Skeppstedt, L. Riceiulli, K. Ramamurthy and P. Stenstrom, 'The Detection and Elimination of Useless Misses in Multiprocessors,' In Proc of the 20th Int'l Symp, on Computer Architecture, pp.88-97, 1993 https://doi.org/10.1145/165123.165145
  11. V. Khera, R. P. LaRowe Jr., and C. S. Ellis, 'An Architecture- Independent Analysrs of False Sharing,' Technical Report CS-1993-13, Duke Univ , Dept of Computer Science, October 1993
  12. E. Markatos and C. Chronaki, 'Trace-Driven Simulation of Data- Alignment and other Factors aftecting Update and Invalidate Based Coherent Memory.' Proc of Int'l Workshop on Modeling, Analysis and Simulation of Computer and Telecommunications Systems, pp.44-52, January 1994
  13. J. Torrcllas, M. S. Lam, and J. L. Hennessy. 'Shared Data Placement Optimizations to Reduce Multiprocessor Cache Miss Rates.' Proceedings of the 1990 Int'l Conf on Parallel Processing, Vol.II (Software). pp 266-270. August 1990
  14. T E Jeremiassen and S. J Eggers. 'Reducing False Sharing on Shared Multiprocessors through Compile Time Data Transformations,'Fifth ACM SIGPLAN Symposium Principles and Practice of Parallel Programming, pp.179-188, July 1995 https://doi.org/10.1145/209936.209955
  15. .J. B. Rothman and A J. Smith, 'Analysis of Shared Memory Misses and Reference Patterns,' Technical Report UCB/CSD-99-1064. U. C. Berkeley, Computer Science Division, Sept 1999
  16. D. L. Black et aI., 'Competitive Management of Distributed Shared Memory,' Proceedings of the 34th IEEE Computer Society International Conference, ?pp.184 -190. March 1989 https://doi.org/10.1109/CMPCON.1989.301925
  17. W. J. Bolosky et al ., 'Numa Policies and Their Relation to Memory Architecture,' Proceedings of the 4th International Conference on Architectural, Support for Programming Language and Operating Svstems, pp.212~221, April 1991
  18. Y Zhou et al., 'Relaxed Consistency and Coherence Granularity in DSM Systems: A Performance Evaluation,' Proc. of the 6th ACM Sym. on Prinerples and Practice of Parallel Programming. June 1997. (IEEE TPDS 에 제출 중) https://doi.org/10.1145/263764.263788
  19. L. Iftode et al, 'Shared Virtual Memory with Automatic Update Support,' Proc. of the Int'l Conf. on Supercomputing, June, 1999 https://doi.org/10.1145/305138.305191
  20. J. P. Singh, W. Weber and A. Gupta, 'SPLASH: Stanford Parallel Applications for Shared Memory,' ACM SIGARCH Computer Architecture News, Vol,20, No.1, pp.5-44. March 1992 https://doi.org/10.1145/130823.130824
  21. S. C. Woo, M. Ohara, E. Torrie, J P. Singh, and A Gupta, 'The SPLASH-2 Programs: Characterization and Methodological Considerations.' Proceedings of the 22nd Annual Int'l Symposium on Computer Architecture, pp.24-36, June 1995
  22. J. E. Veenstra and R. J. Fowler, 'Source code of shared memory allocator in MlNT,' University of Rochester
  23. J. E. Veenstra. 'MINT Tutiriai and User Manual,' Technical report, TR452, Computer Science Department, Uriv of Rochester, July 1993
  24. 이종우,김문희 등,'분산 공유 메모리 시스템에서 동직 공유 메모리 힐당 기법이 거짓 공유에 미치는 영향' 정보과학회논문지(A),24(12),pp.1257-1269,December1997