“Multithreading for Visual Effects” by Lin, Longson, Lait, Zitzelsberger, De Lasa, et al. …

  • ©Andy Lin, Joe Longson, Jeff Lait, Florian Zitzelsberger, Martin De Lasa, and George ElKoura



Entry Number: 11


    Multithreading for Visual Effects

Course Organizer(s):



    Understanding of programming in C or C++. Understanding of visual effects software development.


    Who Should Attend
    R&D developers and technical artists who want to expand their understanding of multithreading approaches and challenges in the visual effects domain, including film and games.

    Parallelism is important to many aspects of visual effects. In this course, experts in several key areas present their specific experiences in applying parallelism in their professional domains. The problem domains are very diverse, and so are the solutions, which include specific threading methodologies. This allows attendees to gain a wide understanding of various approaches to multithreading and compare different techniques in a broad context of state-of-the-art approaches to implementing parallelism, which helps them decide which technologies and approaches to adopt for their own future projects. The presenters describe the challenges and difficulties they encountered, and the approaches they adopted to resolve these issues.

    The course begins with an overview of the current state of parallel programming, followed by five presentations on various domains and threading approaches. Domains include rigging, animation, dynamics, and rendering for film and games, as well as a threading implementation for a full-scale commercial application that covers all of these areas. Topics include CPU and GPU programming, threading, vectorization, tools, debugging techniques, and optimization and performance-profiling approaches. The focus is on practical approaches and solutions to problems commonly encountered by developers.

ACM Digital Library Publication:

Overview Page: