The next generation of visual computing applications will require graphics systems to execute within a wide range of computing environments (from embedded devices to supercomputers) and be both more powerful and orders of magnitude more efficient than existing systems today. Unfortunately, creating efficient rendering solutions for any one platform or any one class of workloads is currently a laborious, expert-level task whose difficulty discourages innovation in interactive graphics techniques and graphics hardware architecture. In response, the PI is developing technologies that, given knowledge of a virtual scene, a specific rendering task, and parallel hardware platform, can automatically generate an optimized graphics system implementation specialized for this context. The core idea is to develop unifying representations for the large space of algorithmic approaches to key rendering problems such as surface visibility and shading and then to leverage these representations in new intelligent renderer compilation systems that identity efficient algorithms for a given workload and machine context. In this system, selecting appropriate algorithms is as much a part of the renderer compilation process as synthesis of high performance code. Defining new core graphics programming abstractions that embody these parameterized algorithmic spaces, exploring their application scope, and determining what graphics domain knowledge is fundamental to automating graphics system optimization are significant research components of this project. A second component of the project involves modeling and characterizing graphics system behavior in order to guide automated discovery of efficient solutions.
Graphics system performance is a fundamental enabler of new visual computing applications. In particular, project success stands to catalyze the impact of visual computing in mobile and embedded environments, where photorealistic augmented reality and high-resolution display of information will be transformative to tasks such as navigation, worker training, as well as new forms of digital entertainment and the arts. Success also stands to have cross-disciplinary benefit to the domain of scientific computing, as hardware, software, and compilation technologies developed for graphics acceleration continue to have widespread impact on the advancement of general parallel computing. High-performance visual computing topics will be used as a central component of efforts to modernize parallel computing education. The results of this effort will be available to the public as an on-line textbook and web reference for modern parallel computing. The project web site (http://graphics.cs.cmu.edu/projects/renderergenerator/) provides additional information on the project.