The effect of seance communication on multiprocessing systems

This paper introduces the seance communication phenomenon and analyzes its effect on a multiprocessing environment. Seance communication is an unnecessary coherency-related activity that is associated with dead cache information. Dead information may reside in the cache for various reasons: task migration, context switches, or working-set changes. Dead information does not have a significant performance impact on a single-processor system; however, it can dominate the performance of multicache environment. In order to evaluate the overhead of seance communication, we develop an analytical model that is based on the fractal behavior of the memory references. So far, all previous works that used the same modeling approach extracted the fractal parameters of a program manually. This paper provides an additional important contribution by demonstrating how these parameters can be automatically extracted from the program trace. Our analysis indicates that Seance communication may severely reduce the overall system performance when using write-update or write-invalidate cache coherency protocols. In addition, we find that the performance of write-update protocols is affected more severely than write-invalidate protocols. The results that are provided by our model are important for better understanding of the coherency-related overhead in multicache systems and for better development of parallel applications and operating systems.

[1]  Jeffrey C. Mogul,et al.  The effect of context switches on cache performance , 1991, ASPLOS IV.

[2]  David A. Patterson,et al.  Performance characterization of a Quad Pentium Pro SMP using OLTP workloads , 1998, ISCA.

[3]  G. Weiss,et al.  Expected Number of Distinct Sites Visited by a Random Walk with an Infinite Variance , 1970 .

[4]  Y. T. Chien Interactive Pattern Recognition: Techniques and Systems , 1976, Computer.

[5]  Philip L. Rosenfeld,et al.  Fractal Nature of Software-Cache Interaction , 1983, IBM J. Res. Dev..

[6]  Mark Horowitz,et al.  An analytical cache model , 1989, TOCS.

[7]  Alan Jay Smith,et al.  A class of compatible cache consistency protocols and their support by the IEEE futurebus , 1986, ISCA '86.

[8]  Dhiraj K. Pradhan,et al.  Modeling Live and Dead Lines in Cache Memory Systems , 1993, IEEE Trans. Computers.

[9]  Joel L. Wolf,et al.  Synthetic Traces for Trace-Driven Simulation of Cache Memories , 1992, IEEE Trans. Computers.

[10]  Doug Burger,et al.  Evaluating Future Microprocessors: the SimpleScalar Tool Set , 1996 .

[11]  Juan Rodriguez-Rosell,et al.  Empirical Data Reference Behavior in Data Base Systems , 1976, Computer.

[12]  Anoop Gupta,et al.  SPLASH: Stanford parallel applications for shared-memory , 1992, CARN.

[13]  R. H. Katz,et al.  Evaluating the performance of four snooping cache coherency protocols , 1989, ISCA '89.

[14]  Andrzej M. Goscinski,et al.  Distributed operating systems - the logical design , 1991 .

[15]  Dominique Thiébaut,et al.  On the Fractal Dimension of Computer Programs and its Application to the Prediction of the Cache Miss Ratio , 1989, IEEE Trans. Computers.

[16]  Sarita V. Adve,et al.  Performance of database workloads on shared-memory systems with out-of-order processors , 1998, ASPLOS VIII.

[17]  Harold S. Stone,et al.  Footprints in the cache , 1987, TOCS.

[18]  Alan Jay Smith,et al.  A class of compatible cache consistency protocols and their support by the IEEE futurebus , 1986, ISCA '86.

[19]  James K. Archibald,et al.  Cache coherence protocols: evaluation using a multiprocessor simulation model , 1986, TOCS.

[20]  Avi Mendelson,et al.  The “ T ” Enhancement of Cache Coherent Protocols , 1995 .

[21]  Andrew S. Tanenbaum,et al.  Distributed operating systems , 2009, CSUR.

[22]  S. Schwartz,et al.  Properties of the working-set model , 1972, OPSR.

[23]  Jack E. Veenstra,et al.  Mint Tutorial and User Manual , 1993 .

[24]  Dhiraj K. Pradhan,et al.  Modeling of Live Lines and True Sharing in Multi-Cache Memory Systems , 1990, ICPP.

[25]  Roger E. Clapp,et al.  Six Integral Theorems for Vector Spherical Harmonics , 1970 .

[26]  James R. Goodman,et al.  An Analysis of the Interactions of Overhead-Reducing Techniques for Shared-Memory Multiprocessors , 1995 .

[27]  Harold S. Stone,et al.  Footprints in the cache , 1986, SIGMETRICS '86/PERFORMANCE '86.

[28]  Thomas Roberts Puzak,et al.  Analysis of cache replacement-algorithms , 1985 .

[29]  Raj Vaswani,et al.  The implications of cache affinity on processor scheduling for multiprogrammed, shared memory multiprocessors , 1991, SOSP '91.

[30]  Peter J. Denning,et al.  The working set model for program behavior , 1968, CACM.

[31]  Murthy V. Devarakonda,et al.  Issues in implementation of cache-affinity scheduling , 1992 .