The “ T ” Enhancement of Cache Coherent Protocols

• ∗ This work was partially supported by the Ollendorff research fund. Abstract This paper introdu c e s t h e n o t i o n o f “Seance communication” in shared memory systems and presents an enhancement to existing cache coherent protocols that improve their performance by reducing the overhead caused by this phenomenon. Seance communication is an unnecessary coherent related activity which is caused when a processor invalidates or updates dead information in other caches. The main reason for this phenomenon is the inability of the system to flush cache information as soon as it is not needed ( dead information). We show that Seance communication can have a significant effect on the performance of multicache systems, and since it is not needed for the correctness of the application, it should be avoided. In this paper, we introduce the “TDragon” cache coherent protocol. The new protocol enhances the “Dragon” wi th new sta tes, termed “T" . Present information in these states has high probability to be dead. The new protocol suggests using update mechanism as long as data in other caches is live, but switches to invalidate based mechanism if the information in all other caches is marked as “T” (dead). The new protocol was found to be very ef f ic ient in e l iminat ing much of the Seance communication effects. We examine the impact of the Seance activity under two software environments: processes based (when no sharing is assumed among the different address spaces) and under threads based environment. We also look at the impact of the cache organization and the cache coherence protocol on the amount of Seance communication caused.