matt at pharr dot org
I've recently joined Google [x], where I'm working on ■■■■■■■■■. In my copious free time, I'm teaching the 2013 installment of cs348b, the graduate-level rendering course at Stanford this spring.
I was previously a Principal Engineer at Intel, where I was responsible for the design and implementation of ispc, the Intel SPMD Program Compiler, now available in open-source form from github. Before attacking the problem of building compilers for better high-performance programming models for modern CPU architectures, I was the architecture lead of the Advanced Rendering Technology group, which is the group that grew out of Neoptica.
I was a founder and the CEO of of Neoptica, which worked on new programming models for graphics on heterogeneous CPU+GPU computer systems. Neoptica was acquired by Intel in the Fall of 2007. I gave a keynote at ACM/Eurographics Graphics Hardware 2006 that got some attention; it outlined some of the context behind our goals at Neoptica.
Before Neoptica, I worked in the Software Architecture group at NVIDIA, co-founded Exluna (acquired by NVIDIA, February 2002), worked in Pixar's Rendering R&D group, and was a graduate student in the Stanford Graphics Lab, where I worked on rendering algorithms and systems, including both the theoretical foundations of rendering as well as software design and systems issues. My thesis was about a new theoretical framework for rendering centered on scattering rather than light transport as the basic abstraction. Pat Hanrahan was my advisor.
Along the way, I wrote a textbook on rendering, Physically Based Rendering: From Theory to Implementation with Greg Humphreys. The book has been used as the primary textbook in more than seventy advanced rendering courses at over twenty universities. The accompanying software has been used in over seventy peer-reviewed research papers. The second edition of the book was released in July of 2010; sample chapters (on building acceleration structures and on sampling and reconstruction) are available from the book's website.
While at NVIDIA, I edited the book GPU Gems 2: Programming Techniques for High-Performance Graphics and General Purpose Computation. The first half of the book is comprised of twenty-four chapters about the state-of-the-art in interactive rendering, and the second half is devoted to general purpose computation on graphics processors (GPGPU)—the first book covering this topic.
In spring of 2003, I was fortunate to have the opportunity to teach cs348b, the image synthesis class at Stanford. The excellent results from the rendering competition at the end of the course are online as well.
Finally, one of my greatest accomplishments yet may well be my decisive victory in the first annual Fantasy Graphics League.