Title: Productively Programming Massively Parallel Processors with Thrust
Live Media Stream - will be activated at time of event.
Abstract: High-level programming interfaces offer developers a productive and performance-portable way to program emerging high-performance parallel architectures. To that end, we are developing Thrust, a library of parallel algorithms which targets both GPUs and and multicore CPUs. Thrust mimics and extends the C++ Standard Template Library, a familiar interface used by many programmers. Originating as a UIUC computer science student project, Thrust now enables new research by allowing domain scientists to solve problems at a high level. This talk will discuss the advantages of high-level libraries, show how these advantages are realized in Thrust, and outline avenues for future research.
Bio: Jared Hoberock is a research scientist within the NVIDIA research group. As a member of NVIDIA Research, he has been involved in building large, high-performance parallel systems. These include Thrust, a generic programming framework for productive parallelism, and OptiX, a GPU-accelerated platform for ray tracing. These reflect his current research interests, which include parallel programming models and unbiased global illumination algorithms. As a student, Jared was a two-time recipient of the NVIDIA Graduate Research Fellowship. He received a bachelor's degree in computer engineering from the University of Missouri at Columbia and a Ph.D in computer science from the University of Illinois at Urbana-Champaign.