Edinburgh Research Archive

Shader optimization and specialization

dc.contributor.advisor
O'Boyle, Michael
dc.contributor.advisor
Komura, Taku
dc.contributor.advisor
Franke, Bjoern
dc.contributor.author
Crawford, Lewis
dc.date.accessioned
2022-10-11T14:38:10Z
dc.date.available
2022-10-11T14:38:10Z
dc.date.issued
2022-10-11
dc.description.abstract
In the field of real-time graphics for computer games, performance has a significant effect on the player’s enjoyment and immersion. Graphics processing units (GPUs) are hardware accelerators that run small parallelized shader programs to speed up computationally expensive rendering calculations. This thesis examines optimizing shader programs and explores ways in which data patterns on both the CPU and GPU can be analyzed to automatically speed up rendering in games. Initially, the effect of traditional compiler optimizations on shader source-code was explored. Techniques such as loop unrolling or arithmetic reassociation provided speed-ups on several devices, but different GPU hardware responded differently to each set of optimizations. Analyzing execution traces from numerous popular PC games revealed that much of the data passed from CPU-based API calls to GPU-based shaders is either unused, or remains constant. A system was developed to capture this constant data and fold it into the shaders’ source-code. Re-running the game’s rendering code using these specialized shader variants resulted in performance improvements in several commercial games without impacting their visual quality.
en
dc.identifier.uri
https://hdl.handle.net/1842/39423
dc.identifier.uri
http://dx.doi.org/10.7488/era/2673
dc.language.iso
en
en
dc.publisher
The University of Edinburgh
en
dc.relation.hasversion
Lewis Crawford and Michael O’Boyle. A cross-platform evaluation of graphics shader compiler optimization. In Performance Analysis of Systems and Software (ISPASS), 2018 IEEE International Symposium on, pages 219–228. IEEE, 2018.
en
dc.relation.hasversion
Lewis Crawford and Michael O’Boyle. Specialization opportunities in graphical workloads. In 2019 28th International Conference on Parallel Architectures and Compilation Techniques (PACT), pages 272–283. IEEE, 2019.
en
dc.subject
compiler optimization
en
dc.subject
graphics
en
dc.subject
shaders
en
dc.subject
GPU
en
dc.title
Shader optimization and specialization
en
dc.type
Thesis or Dissertation
en
dc.type.qualificationlevel
Doctoral
en
dc.type.qualificationname
PhD Doctor of Philosophy
en

Files

Original bundle

Now showing 1 - 1 of 1
Name:
Crawford2022.pdf
Size:
23.12 MB
Format:
Adobe Portable Document Format
Description:

This item appears in the following Collection(s)