arrow
Return

GRAMPS: A Programming Model for Graphics Pipelines

delete2009-02-09
delete61
PRE
AI
K
Kayvon Fatahalian
P
Pat Hanrahan
DOI:10.1145/1477926.1477930delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
We introduce GRAMPS, a programming model that generalizes concepts from modern real-time graphics pipelines by exposing a model of execution containing both fixed-function and application-programmable processing stages that exchange data via queues. GRAMPS allows the number, type, and connectivity of these processing stages to be defined by software, permitting arbitrary processing pipelines or even processing graphs. Applications achieve high performance using GRAMPS by expressing advanced rendering algorithms as custom pipelines, then using the pipeline as a rendering engine. We describe the design of GRAMPS, then evaluate it by implementing three pipelines, that is, Direct3D, a ray tracer, and a hybridization of the two, and running them on emulations of two different GRAMPS implementations: a traditional GPU-like architecture and a CPU-like multicore architecture. In our tests, our GRAMPS schedulers run our pipelines with 500 to 1500KB of queue usage at their peaks.
Keywords:
Design
Algorithms
Graphics pipelines
many-core architectures
GPUs
stream computing
parallel programming
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

ACM Transactions on Graphics cover
ACM Transactions on Graphics
IF:
9.5
Papers:
4.7K
Citations:
3.6W

Organization

S
Stanford University
Scholars:
9.6W
Papers: 8.2W
Citations: 17.0W
M
Microsoft
Scholars:
3.0K
Papers: 2.7K
Citations: 7