Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/645533.656492guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

False Sharing Elimination by Selection of Runtime Scheduling Parameters

Published: 11 August 1997 Publication History

Abstract

False sharing can be a source of significant overhead on shared-memory multiprocessors. Several program restructuring techniques to reduce false sharing have been proposed in past work. In this paper, we propose an approach for elimination of false sharing based solely on selection of runtime schedule parameters for parallel loops. This approach leads to more portable code since only the schedule parameters need to be changed to target different multiprocessors. Also, the guarantee of elimination (rather than reduction) of false sharing in a parallel loop can significantly reduce the bookkeeping overhead in some memory consistency mechanisms. We present some preliminary experimental results for this approach.

References

[1]
David F. Bacon, Jyh-Herng Chow, Dz ching R. Ju, K. Muthukumar, and Vivek Sarkar. A Compiler Framework for Restructuring Data Declarations to Enhance Cache and TLB Effectiveness. CASCON '94 conference, November 1994.
[2]
David H. Bailey. Unfavorable Strides in Cache Memory Systems. Scientific Programming, 4:53-58, 1995. RNR Technical Report RNR-92-015, NASA Ames Research Center.
[3]
Jyh-Herng Chow, Leonard E. Lyon, and Vivek Sarkar. Automatic Parallelization for Symmetric Shared-Memory Multiprocessors. CASCON '96 conference, November 1996.
[4]
Michel Dubois, Christoph Scheurich, and Faye A. Briggs. Synchronization, Coherence, and Event Ordering in Multiprocessors. IEEE Computer, 21(2), February 1988. Survey and Tutorial Series.
[5]
Susan J. Eggers and Tor E. Jeremiassen. Eliminating False Sharing. In International Conference on Parallel Processing, 1991.
[6]
Susan J. Eggers and Randy H. Katz. The Effect of Sharing on the Cache and Bus Performance of Parallel Programs. In ACM International Conference on Architectural Support for Programming Languages and Operating Systems, pages 257-270, 1989.
[7]
Elana D. Granston. Toward a Compile-Time Methodology for Reducing False Sharing and Communication Traffic in Shared Virtual Memory Systems. In Proc. of Sixth Workshop on Language and Compilers for Parallel Computing, 1993.
[8]
Manish Gupta and David A. Padua. Effects of Program Parallelization and Stripmining Transformation on Cache Performance in a Multiprocessor. In International Conference on Parallel Processing, pages I.301-I.304, 1991.
[9]
Alan H. Karp and Vivek Sarkar. Data Merging for Shared-Memory Multiprocessors. Proceedings of the 26th Hawaii International Conference on System Sciences, Wailea, Hawaii, Volume I (Architecture), pages 244-256, January 1993.
[10]
Pete Keleher, Alan L. Cox, and Willy Zwaenepoel. Lazy Release Consistency for Software Distributed Shared Memory. In Proc. of the 19th Annual International Symposium on Computer Architecture, pages 13-21, May 1992.
[11]
Monica S. Lam, Edward E. Rothberg, and Michael E. Wolf. The Cache Performance and Optimizations of Blocked Algorithms. In ACM International Conference on Architectural Support for Programming Languages and Operating Systems, pages 63-74, 1991.
[12]
Bill Nitzberg and Virginia Lo. Distributed Shared Memory: A Survey of Issues and Algorithms. IEEE Computer, 24(8):52-60, 1991.
[13]
IBM Shared Memory System POWER/4 User's Guide and Technical Reference, 1993.
[14]
Barbara Simons, Vivek Sarkar, Jr. Mauricio Breternitz, and Michael Lai. An Optimal Asynchronous Scheduling Algorithm for Software Cache Consistency. Proc. Hawaii International Conference on System Sciences, January 1994.
[15]
Per Stenström. A Survey of Cache Coherence Schemes for Multiprocessors. IEEE Computer, 23(6):12-24, 1990.
[16]
Peiyi Tang and Pen-Chung Yew. Processor Self-Scheduling for Multiple-Nested Parallel Loops. Proc. of the 1986 Int'l Conf. on Parallel Proceuing, February 1986.
[17]
Olivier Temam, Elana Granston, and William Jalby. To Copy or Not to Copy: A Compile-Time Technique for Assessing When Data Copying Should be Used to Eliminate Cache Conflicts. In Proc. Supercomputing '93, pages 410- 419, 1993.
[18]
Josep Torrellas, Monica S. Lam, and John L. Hennessy. Shared Data Placement Optimizations to Reduce Multiprocessor Cache Miss Rates. In International Conference on Parallel Proceuing, pages II.266-II.270, 1990.
[19]
Michael E. Wolf and Monica S. Lam. A Data Locality Optimization Algorithm. Proceedings of the ACM SIGPLAN Symposium on Programming Language Design and Implementation, pages 30-44, June 1991.

Cited By

View all
  1. False Sharing Elimination by Selection of Runtime Scheduling Parameters

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image Guide Proceedings
    ICPP '97: Proceedings of the international Conference on Parallel Processing
    August 1997
    334 pages
    ISBN:081868108X

    Publisher

    IEEE Computer Society

    United States

    Publication History

    Published: 11 August 1997

    Author Tags

    1. compilers
    2. false sharing
    3. parallel loops
    4. runtime scheduling
    5. shared-memory multiprocessors

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 15 Jan 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2019)Huron: hybrid false sharing detection and repairProceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation10.1145/3314221.3314644(453-468)Online publication date: 8-Jun-2019
    • (2014)PREDATORACM SIGPLAN Notices10.1145/2692916.255524449:8(3-14)Online publication date: 6-Feb-2014
    • (2014)PREDATORProceedings of the 19th ACM SIGPLAN symposium on Principles and practice of parallel programming10.1145/2555243.2555244(3-14)Online publication date: 6-Feb-2014
    • (2013)Detection of false sharing using machine learningProceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis10.1145/2503210.2503269(1-9)Online publication date: 17-Nov-2013
    • (2011)SHERIFFACM SIGPLAN Notices10.1145/2076021.204807046:10(3-18)Online publication date: 22-Oct-2011
    • (2011)SHERIFFProceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications10.1145/2048066.2048070(3-18)Online publication date: 22-Oct-2011
    • (2003)Reducing False Sharing and Improving Spatial Locality in a Unified Compilation FrameworkIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2003.119540714:4(337-354)Online publication date: 1-Apr-2003

    View Options

    View options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media