Symbolic Differentiation in GPU Shaders

  • Brian Guenter ,
  • John Rapp ,
  • Mark Finch

MSR-TR-2011-31 |

Publication

Derivatives arise frequently in graphics and scientific computation applications. As GPU’s become more widely used for scientific computation the need for derivatives can be expected to increase. To meet this need we have added symbolic differentiation as a built in language feature in the HLSL shading language. The symbolic derivative is computed at compile time so it is available in all types of shaders (geometry, pixel, vertex, etc.). The algorithm for computing the symbolic derivative is simple and has reasonable compilation and run time overhead.

Publication Downloads

Examples of HLSL Symbolic-Differentiation Programs

July 25, 2011

Procedural Texture

Demonstrates procedural surfaces and textures defined using symbolic differentiation.