Sequoia: programming the memory hierarchy

  • Authors:
  • Kayvon Fatahalian;Daniel Reiter Horn;Timothy J. Knight;Larkhoon Leem;Mike Houston;Ji Young Park;Mattan Erez;Manman Ren;Alex Aiken;William J. Dally;Pat Hanrahan

  • Affiliations:
  • Stanford University;Stanford University;Stanford University;Stanford University;Stanford University;Stanford University;Stanford University;Stanford University;Stanford University;Stanford University;Stanford University

  • Venue:
  • Proceedings of the 2006 ACM/IEEE conference on Supercomputing
  • Year:
  • 2006

Quantified Score

Hi-index 0.02

Visualization

Abstract

We present Sequoia, a programming language designed to facilitate the development of memory hierarchy aware parallel programs that remain portable across modern machines featuring different memory hierarchy configurations. Sequoia abstractly exposes hierarchical memory in the programming model and provides language mechanisms to describe communication vertically through the machine and to localize computation to particular memory locations within it. We have implemented a complete programming system, including a compiler and runtime systems for Cell processor-based blade systems and distributed memory clusters, and demonstrate efficient performance running Sequoia programs on both of these platforms.