set-prog-api

set-prog-api - Programmable GPUs Outline papi-1 papi-1...

Info iconThis preview shows pages 1–7. Sign up to view the full content.

View Full Document Right Arrow Icon
papi-1 papi-1 Programmable GPUs Outline Outline References Programmable Units Languages OpenGL Shading Language papi-1 EE 7700-1 Lecture Transparency. Formatted 11:30, 25 March 2009 from set-prog-api. papi-1
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
papi-2 papi-2 References OpenGL OpenGL Shading Language John Kessenich, “The OpenGL Shading Language,” OpenGL Language Version 1.20, Document Revision 8, September 2006. OpenGL Commands for Shader Language Control Mark Segal, Kurt Akeley, “The OpenGL Graphics System: A SpeciFcation (Version 2.1)”, OpenGL, July 2006. papi-2 EE 7700-1 Lecture Transparency. Formatted 11:30, 25 March 2009 from set-prog-api. papi-2
Background image of page 2
papi-3 papi-3 Programmable Units Programmable Unit: Part of the pipeline that can be programmed (as deFned by some API). Choice of what is and isn’t programmable constrained by: Need to allow for parallel (multithreaded, SIMD, MIMD) execution. Simple memory access. OpenGL Programmable Units Vertex Processor: Transform vertex and texture coordinates, compute lighting. Geometry Processor: Using a transformed primitive and its neighbors generates new primitives. ±or example, replace one triangle with many triangles to more closely match a curved surface. (Not in OpenGL 2.1, deFned in extensions.) Fragment Processor: Using interpolated coordinates, read Fltered texels and combine with colors. papi-3 EE 7700-1 Lecture Transparency. Formatted 11:30, 25 March 2009 from set-prog-api. papi-3
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
papi-4 papi-4 Languages Shader: A programmable part of a GPU. Name is now misleading but is still in common use. Shader Language: An language for programming shaders. Shader Assembly Language: An assembly-like language for programming GPUs. High-Level Shader Language: A high-level language for programming GPUs. papi-4 EE 7700-1 Lecture Transparency. Formatted 11:30, 25 March 2009 from set-prog-api. papi-4
Background image of page 4
papi-5 papi-5 Shader Assembly Language Shader Assembly Language At one time, only way to program. Unlike a true assembly language . . . . . . no instruction encoding defned . . . . . . no promise oF a one-to-one correspondence with machine instructions. Translated into machine instructions (or micro-instructions) by API implementation. Many APIs not picky about matching assembly language to target. Currently might be used For tuning code From high-level shader language. Separate languages defned For vertex, geometry, and Fragment processors. Early languages closely match underlying hardware, so more useFul For perFormance tuning. Defned as OpenGL extensions. papi-5 EE 7700-1 Lecture Transparency. Formatted 11:30, 25 March 2009 from set-prog-api. papi-5
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
papi-6 papi-6 Shader Assembly Languages First-Generation Languages NV vertex program (For vertex processor) Close match to GEForce 3 hardware. No branches or memory (texture or otherwise) access.
Background image of page 6
Image of page 7
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 01/03/2012 for the course EE 7700 taught by Professor Staff during the Spring '08 term at LSU.

Page1 / 32

set-prog-api - Programmable GPUs Outline papi-1 papi-1...

This preview shows document pages 1 - 7. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online