Hierarchical techniques are commonplace in ameliorating the bottlenecks, such as cache coherence, in the design of scalable multi/manycores. Furthermore, there have been proposals to simplify the coherence based on the data-race-free semantics of the software and private/shared data classification, where cores self-invalidate their shared data upon synchronizations. However, naive private/shared data classification in the hierarchies nullifies such optimizations by increasing the amount of data misclassified as shared and therefore being needlessly self-invalidated.
We introduce a private/shared data classification approach for hierarchical clusters, where a datum is concurrently classified as private and shared with respect to different classification scopes. Such scope-aware classification eliminates the needless self-invalidation of the valid data at synchronizations, resulting in a coherence scheme that reduces the average network traffic and execution time by 30% and 5%, respectively.
Available as PDF (340 kB, no cover)
Download BibTeX entry.