Saturday, April 20, 2024

Two Step Alogrithm for Coherence Reduction


A multiprocessor requires coherence in order to synchronize the caches. However not all data requires coherence. If data is not shared with another task, it does not require coherence.

If we create an instruction that identifies data that is not shared with other tasks, then we have identified data that does not require coherence.

Step 1 - We identify non-shared program data with a new memory allocation instruction. This data does not require coherence. This immediately reduces coherence. (Fig. 1 in JCST article below.) Coherence occurs on every write and consists of both cache invalidation and write-through.

Step 2 - The second step handles shared data in a manner that also does not require coherence. This completely eliminates coherence.

The Journal of Computer Science and Technology March 2024 article CFP: A Coherence-Free Processor Design explains reducing coherence in two steps, and the second step is 100%. 


Different Algorithms for the Same Problem

No comments:

Post a Comment

Thread Safe Computers

  The invention redefines thread safe.  For comparison, two current definitions are shown below. Due to blog incompatibility current version...