Master's Thesis - Studierstube Augmented Reality Project - Graz ...
Master's Thesis - Studierstube Augmented Reality Project - Graz ...
Master's Thesis - Studierstube Augmented Reality Project - Graz ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
2.2 Advanced Graphics Processing<br />
pass. Since passing back the results in the same render pass is currently only available<br />
on late-breaking Nvidia G8x architectures, the programmer will have to by-pass this in<br />
a way called multi-pass rendering .<br />
• multi-pass rendering uses the output buffer or texture which was generated in on<br />
render pass in the next render pass as input.<br />
• single-pass rendering, in contrast, generates the final result in one render pass.<br />
Additional to multi-pass rendering a technique called double buffering has to be used<br />
due to most hardware’s disability to read and write to the same texture. This technique<br />
switches two identical textures in each render pass. Depending on the frame rate of<br />
the application these textures are subsequently exchanged and updated. Subsequently,<br />
only one iteration step can be performed each frame but this for millions of parallel<br />
iterations at once. Depending on the settling time of the system or an abort criterion,<br />
such calculation updates of parallel systems can be performed much faster on nearly<br />
all currently available graphics hardware cards than on a CPU with this method.<br />
Despite these shortcomings there are also several comforts when programming<br />
graphics hardware. For example a bilinear or trilinear interpolation, not only for a<br />
texture, can be performed with hardware implemented units. This interpolation tends<br />
to be really fast. Furthermore all in hardware implemented clipping mechanisms can<br />
be used for many parts of standard algorithms which can imply another speedup.<br />
Concluding, it must be noted that shader programs can not replace conventional<br />
application programs due to the lack of high level languages but for problems with a high<br />
arithmetic intensity as defined by equation 2.8. For sequential data access, GPU stream<br />
processors can increase the performance remarkable. Since complex visualizations are<br />
commonly linked to highly parallel costly calculations a programmable graphics card<br />
is rather predestined for both: Calculation of the desired simulations and a subsequent<br />
direct rendering of them.<br />
34