“Genetic programming for shader simplification” – ACM SIGGRAPH HISTORY ARCHIVES

“Genetic programming for shader simplification”

  • 2011-SA-Technical-Paper_Sitthi-amorn_Genetic-Programming-for-Shader-Simplification

Conference:


Type(s):


Title:

    Genetic programming for shader simplification

Session/Category Title:   Shading and Shadows


Presenter(s)/Author(s):



Abstract:


    We present a framework based on Genetic Programming (GP) for automatically simplifying procedural shaders. Our approach computes a series of increasingly simplified shaders that expose the inherent trade-off between speed and accuracy. Compared to existing automatic methods for pixel shader simplification [Olano et al. 2003; Pellacini 2005], our approach considers a wider space of code transformations and produces faster and more faithful results. We further demonstrate how our cost function can be rapidly evaluated using graphics hardware, which allows tens of thousands of shader variants to be considered during the optimization process. Our approach is also applicable to multi-pass shaders and perceptual-based error metrics.

References:


    1. Blinn, J. F. 1977. Models of light reflection for computer synthesized pictures. In Computer Graphics (Proceedings of ACM SIGGRAPH), pages 192–198. Google ScholarDigital Library
    2. Cook, R. L. 1984. Shade trees. In Computer Graphics (Proceedings of ACM SIGGRAPH). Google ScholarDigital Library
    3. Cook, R. L. and Torrance, K. E. 1981. A reflectance model for computer graphics. Computer Graphics (Proceedings of SIGGRAPH), pages 7–24. Google ScholarDigital Library
    4. Deb, K., Pratap, A., Agarwal, S., and Meyarivan, T. 2002. A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evolutionary Computation, 6(2):182–197. Google ScholarDigital Library
    5. Deering, M., Winner, S., Schediwy, B., Duffy, C., and Hunt, N. 1988. The triangle processor and normal vector shader: a VLSI system for high performance graphics. In Computer Graphics (Proceedings of ACM SIGGRAPH), pages 21–30. Google ScholarDigital Library
    6. d’Eon, E., Luebke, D., and Enderton, E. 2007. Efficient rendering of human skin. In Proceedings of the Eurographics Symposium on Rendering (EGSR). Google ScholarDigital Library
    7. Hasselgren, J. and Akenine-Moller, T. 2006. An efficient multi-view rasterization architecture. In Proceedings of the Eurographics Symposium on Rendering (EGSR). Google ScholarDigital Library
    8. Koza, J. R. 1992. Genetic Programming: On the Programming of Computers by Means of Natural Selection. MIT Press. Google ScholarDigital Library
    9. Miller, B. L. and Goldberg, D. E. 1996. Genetic algorithms, selection schemes, and the varying effects of noise. Journ. of Evolutionary Computation, 4(2):113–131. Google ScholarDigital Library
    10. Mitchell, M., Holland, J. H., and Forrest, S. 1993. When will a genetic algorithm outperform hill climbing. In Advances in Neural Information Processing Systems, pages 51–58.Google Scholar
    11. Muchnick, S. S. 1997. Advanced Compiler Design and Implementation. Morgan Kaufmann. ISBN 1-55860-320-4. Google ScholarDigital Library
    12. Necula, G. C., McPeak, S., Rahul, S. P., and Weimer, W. 2002. Cil: An infrastructure for C program analysis and transformation. In International Conference on Compiler Construction, pages 213–228. Google ScholarDigital Library
    13. Nehab, D., Sander, P. V., Lawrence, J., Tatarchuk, N., and Isidoro, J. R. 2007. Accelerating real-time shading with reverse reprojection caching. In Graphics Hardware. Google ScholarDigital Library
    14. Olano, M., Kuehne, B., and Simmons, M. 2003. Automatic shader level of detail. In HWWS ’03: Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics hardware. Google ScholarDigital Library
    15. Pellacini, F. 2005. User-configurable automatic shader simplification. ACM Transacations on Graphics (Proc. SIGGRAPH). Google ScholarDigital Library
    16. Perlin, K. 1985. An image synthesizer. In Computer Graphics (Proceedings of ACM SIGGRAPH). Google ScholarDigital Library
    17. Scherzer, D., Jeschke, S., and Wimmer, M. 2007. Pixel-correct shadow maps with temporal reprojection and shadow test confidence. In Proceedings of the Eurographics Symposium on Rendering (EGSR). Google ScholarDigital Library
    18. Sitthi-amorn, P., Lawrence, J., Yang, L., Sander, P., Nehab, D., and Xi, J. 2008. Automated reprojection-based pixel shader optimization. ACM Transactions on Graphics (Proc. SIGGRAPH Asia), 27(5):127. Google ScholarDigital Library
    19. Wang, Z., Bovik, A. C., Sheikh, H. R., and Simoncelli, E. P. 2004. Image quality assessment: From error visibility to structural similarity. IEEE Transactions on Image Processing, 13(4). Google ScholarDigital Library
    20. Weimer, W., Forrest, S., Le Goues, C., and Nguyen, T. 2010. Automatic program repair with evolutionary computation. Communications of the ACM, 53(5):109–116. Google ScholarDigital Library
    21. Weimer, W., Nguyen, T. V., Le Goues, C., and Forrest, S. 2009. Automatically finding patches using genetic programming. In Proceedings of the International Conference on Software Engineering (ICSE), pages 364–374. Google ScholarDigital Library


ACM Digital Library Publication:



Overview Page:



Submit a story:

If you would like to submit a story about this presentation, please contact us: historyarchives@siggraph.org