Sequoia: Programming the Memory Hierarchy
By Kayvon Fatahalian, Daniel Reiter Horn, T. Knight, L. Leem, M. Houston, Ji Young Park, Mattan Erez, Manman Ren, A. Aiken, William (Bill) J. Dally and 1 more. International Conference on Software Composition, 2006
561 citations recorded by the source corpus.
Subfields: Computer Networks and Communications, Hardware and Architecture
View Paper: https://www.semanticscholar.org/paper/0ac7e127033f1534bb2042461c653784dcf29b55
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Computer Networks and Communications
- A. Aiken
- Frédo Durand
- Randal C. Burns
- Saman P. Amarasinghe
- Kunle Olukotun
- Sang Kyun Kim
- Sungpack Hong
- Tayo Oguntebi
In Hardware and Architecture
- A. Aiken
- Sungpack Hong
- Andrew Adams
- Kunle Olukotun
- Jonathan Ragan-Kelley
- Frédo Durand
- Saman P. Amarasinghe
- Sang Kyun Kim
Citations in the corpus
- Merge: a programming model for heterogeneous multi-core systems (2008, unknown): “Similar to the Sequoia programming language (9), each work unit, the principal parallel construct in the Merge framework, is a task, a side-effect free function.”
- Accelerating CUDA graph algorithms at maximum warp (2011, background): “On the other side of the programming model spectrum are high-level approaches that abstract away architectural traits from the user; instead, the compiler/runtime system intelligently generates or selects proper execution codes based on high-level user description, targeting any processor architectu”
- Data exploration of turbulence simulations using a database cluster (2007, methodology): “The Sequoia programming language [8] was designed around making memory-hierarchy dependent applications portable across multiple architectures.”
- Legion: Expressing locality and independence with logical regions (2012, background): “Legion also enables explicit, programmer controlled movement of data through the memory hierarchy and placement of tasks based on locality information via a novel mapping interface.”
- State-of-the-art in heterogeneous computing (2010, background): “Sequoia[55,100] is a programming language for the CBEA and traditional CPU clusters.”
- Halide: a language and compiler for optimizing parallelism, locality, and recomputation in image processing pipelines (2013, background): “Split Compilers Sequoia’s “mappings” and SPIRAL’s loop synthesis algebra echo our separation of the model of scheduling from the description of the algorithm, and its lifting outside our compiler [9, 25].”