Table of Contents
Fetching ...

Tascade: Hardware Support for Atomic-free, Asynchronous and Efficient Reduction Trees

Marcelo Orenes-Vera, Esin Tureci, David Wentzlaff, Margaret Martonosi

TL;DR

Tascade tackles the scalability bottlenecks of atomic reductions in graph and sparse workloads on massive manycore systems. It introduces a hardware–software co-design with data-private reductions via per-region proxy arrays and a P-cache, augmented by a Cascading Router that enables asynchronous reduction trees along the NoC. The approach substantially reduces long-distance communication and load imbalance, achieving strong scaling to a million tiles (e.g., BFS on RMAT-26 reaching up to 7630 GTEPS) and outperforming prior work such as Dalorex by large factors. These results demonstrate significant improvements in throughput and NoC traffic, with practical implications for large-scale graph analytics and irregular-data workloads on future tile-based machines.

Abstract

Graph search and sparse data-structure traversal workloads contain challenging irregular memory patterns on global data structures that need to be modified atomically. Distributed processing of these workloads has relied on server threads operating on their own data copies that are merged upon global synchronization. As parallelism increases within each server, the communication challenges that arose in distributed systems a decade ago are now being encountered within large manycore servers. Prior work has achieved scalability for sparse applications up to thousands of PUs on-chip, but does not scale further due to increasing communication distances and load-imbalance across PUs. To address these challenges we propose Tascade, a hardware-software co-design that offers support for storage-efficient data-private reductions as well as asynchronous and opportunistic reduction trees. Tascade introduces an execution model along with supporting hardware design that allows coalescing of data updates regionally and merges the data from these regions through cascaded updates. Together, Tascade innovations minimize communication and increase work balance in task-based parallelization schemes and scales up to a million PUs. We evaluate six applications and four datasets to provide a detailed analysis of Tascade's performance, power, and traffic-reduction gains over prior work. Our parallelization of Breadth-First-Search with RMAT-26 across a million PUs -- the largest of the literature -- reaches over 7600 GTEPS.

Tascade: Hardware Support for Atomic-free, Asynchronous and Efficient Reduction Trees

TL;DR

Tascade tackles the scalability bottlenecks of atomic reductions in graph and sparse workloads on massive manycore systems. It introduces a hardware–software co-design with data-private reductions via per-region proxy arrays and a P-cache, augmented by a Cascading Router that enables asynchronous reduction trees along the NoC. The approach substantially reduces long-distance communication and load imbalance, achieving strong scaling to a million tiles (e.g., BFS on RMAT-26 reaching up to 7630 GTEPS) and outperforming prior work such as Dalorex by large factors. These results demonstrate significant improvements in throughput and NoC traffic, with practical implications for large-scale graph analytics and irregular-data workloads on future tile-based machines.

Abstract

Graph search and sparse data-structure traversal workloads contain challenging irregular memory patterns on global data structures that need to be modified atomically. Distributed processing of these workloads has relied on server threads operating on their own data copies that are merged upon global synchronization. As parallelism increases within each server, the communication challenges that arose in distributed systems a decade ago are now being encountered within large manycore servers. Prior work has achieved scalability for sparse applications up to thousands of PUs on-chip, but does not scale further due to increasing communication distances and load-imbalance across PUs. To address these challenges we propose Tascade, a hardware-software co-design that offers support for storage-efficient data-private reductions as well as asynchronous and opportunistic reduction trees. Tascade introduces an execution model along with supporting hardware design that allows coalescing of data updates regionally and merges the data from these regions through cascaded updates. Together, Tascade innovations minimize communication and increase work balance in task-based parallelization schemes and scales up to a million PUs. We evaluate six applications and four datasets to provide a detailed analysis of Tascade's performance, power, and traffic-reduction gains over prior work. Our parallelization of Breadth-First-Search with RMAT-26 across a million PUs -- the largest of the literature -- reaches over 7600 GTEPS.
Paper Structure (20 sections, 2 equations, 10 figures)

This paper contains 20 sections, 2 equations, 10 figures.

Figures (10)

  • Figure 1: Reduction Trees of Tascade. Right: We depict the flow of updates for a 2D mesh topology for two different reduction trees, where the blue and red tiles are the roots (data owners), and the cyan and magenta tiles are the corresponding proxy tiles. Since all proxies of a particular element of the reduction array have the same coordinates within each region, this allows for cascading updates selectively by the proxies en route to the owner (O). Left: Flow of updates for coalescing within a proxy region prior to reduction (top). Graph representation of one of the reduction trees (bottom).
  • Figure 2: Tasks for single-source shortest path (SSSP) and configuration of proxy regions (of 4x4 tiles) in Tascade. Each region operates on its copy (p_dist) of the reduction array (dist) where each tile is a proxy for a fraction of it. Contrary to Dalorex, in Tascade, T2 invokes T3', which targets a proxy tile within the same region. T3' tasks write to p_dist, which lives in the P-cache (see \ref{['sec:proxy_cache']}). Upon a cache miss, it returns the default value. T3 tasks are invoked based on the write-propagation policy of the P-cache (i.e., write-through in SSSP). The red arrow shows a T3' that does not result in an update in P-cache. The blue arrow shows a T3' that updates the P-cache and triggers a T3 invocation towards the owner tile. Through selective cascading, en route to the owner, this T3' message may be captured by a proxy tile---indicated with clouds.
  • Figure 3: Performance gain and network traffic of Dalorex and Tascade for three scaling steps for each dataset---64x64 ($2^{12}$ tiles), 128x128 ($2^{14}$) and 256x256 ($2^{16}$) grid---normalized to Dalorex 64x64.
  • Figure 4: Performance, energy efficiency and traffic-reduction gains of the accumulative features of Tascade over the baseline of Dalorex (no proxy).
  • Figure 5: Performance, energy efficiency and traffic-reduction gains of decreasing proxy region sizes normalized to the baseline of Dalorex.
  • ...and 5 more figures