Exploiting Fine-Grained Data Parallelism with Chip Multiprocessors and Fast Barriers

  • Authors:
  • Jack Sampson;Ruben Gonzalez;Jean-Francois Collard;Norman P. Jouppi;Mike Schlansker;Brad Calder

  • Affiliations:
  • UC San Diego;UPC Barcelona;Hewlett-Packard Laboratories, Palo Alto, California;Hewlett-Packard Laboratories, Palo Alto, California;Hewlett-Packard Laboratories, Palo Alto, California;UC San Diego

  • Venue:
  • Proceedings of the 39th Annual IEEE/ACM International Symposium on Microarchitecture
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

We examine the ability of CMPs, due to their lower onchip communication latencies, to exploit data parallelism at inner-loop granularities similar to that commonly targeted by vector machines. Parallelizing code in this manner leads to a high frequency of barriers, and we explore the impact of different barrier mechanisms upon the efficiency of this approach. To further exploit the potential of CMPs for fine-grained data parallel tasks, we present barrier filters, a mechanism for fast barrier synchronization on chip multi-processors to enable vector computations to be efficiently distributed across the cores of a CMP. We ensure that all threads arriving at a barrier require an unavailable cache line to proceed, and, by placing additional hardware in the shared portions of the memory subsytem, we starve their requests until they all have arrived. Specifically, our approach uses invalidation requests to both make cache lines unavailable and identify when a thread has reached the barrier. We examine two types of barrier filters, one synchronizing through instruction cache lines, and the other through data cache lines.