Intel and Foundry ally to update Katana convert it to a multithreaded program. As a result, developers see performance improvements of 2×–30×.
Katana, Foundry’s professional lighting and look development software is a powerful tool developed for cinematic and video production teams. As a procedural, asset-based tool, Katana enables people on a project to work with specific elements of a scene without interfering with each other’s work. True to the Foundry’s workflow approach, Katana relies on a node-graph, which is akin to creating a repeatable recipe that can be reused by other artists and is trackable.
Foundry has rebuilt Katana with version 3.5, so that the program is faster, enabling artists to iterate faster. The program supports all major renderers and images can be presented directly to the viewer. Katana has developed a renderer-agnostic Universal Scene Description (USD) plugin which allows studios to build USD pipelines with less development effort. The company says it will release the source code for the USD plugin soon after the release of Katana 3.5.
To backtrack a bit, USD was created by Pixar to facilitate the development of production pipelines. The USD enables different companies using different software for modeling, shading, animation, lighting, fx, rendering, and so on, to interchange content and build 3D scenes using various assets including models, animations, virtual sets, scenes, and shots.
What we found most intriguing was the work Foundry did with Intel to transform Katana from a single-threaded application to multi-threaded. Foundry has been working under the hood of Katana to improve performance. The product has always been optimized to open huge data sets rapidly. And, with the introduction of Katana 3.1 in 2018, Foundry concentrated on improving performance for multi-threaded plugins, which improved performance for all plug-ins. This time, Foundry used Intel’s VTune Amplifier and Threading Building Blocks. VTune Amplifier collects profiling data and presents it in an interface that simplifies interpretation. Intel and Foundry engineers worked together to find solutions using Intel’s Thread Building Blocks, its C++ library for shared memory parallel programming and heterogeneous computing. Intel says it supports task-based parallel programming, high-level parallel algorithms, data flow graphs, concurrent containers, and scalable memory allocation among other tricks.
Foundry says they’ve seen dramatic performance improvements that will help their customers work more iteratively. All Katana scene processing is multi-threaded. They say they’re seeing performance improvements from 2× to 30×.
Another headline feature is the new Monitor Layer, which enables users to interact with ray-traced renders directly in the viewer.
With the 3.0 release of Katana, Foundry worked with Pixar to incorporate Pixar’s Hydra viewer in Katana. Hydra is a scalable, OpenGL renderer developed at Pixar as a key component of the USD. Katana’s new 3.5 rendering system is 100% compatible with all existing renderer plugins.
Katana’s Shading Group mechanism has been updated too, to enable users to define custom shading groups with user-defined input and output connections. Shading Groups can include whole materials or regularly used blocks of shading nodes.
Jordan Thistlewood, Foundry’s Director of Product, points out that Katana is first and foremost a tool that has to work the production company pipelines. He says, “Katana is a tool that doesn’t stand alone—the ecosystem around it is very important to us and our clients. Therefore, we are open-sourcing USD plugins for Katana that are render-agnostic. We’re also close to having an open-source Shotgun plugin so our clients don’t have to build it themselves. This holistic approach to Katana and the teams that use it is fundamental to our continuous product improvements at Foundry.”
What do we think?
Foundry has been working through its programs to improve performance. The work done on Katana has been going on through several releases and it’s ongoing. Intel’s materials emphasize Katana’s performance on Intel processors, but the truth is, that better use of multi-threading means Katana’s performance will improve on AMD processors as well. Foundry agrees, but they tell us they haven’t had a chance to benchmark performance for AMD yet. Also, all this work on Katana made us wonder about Nuke, Foundry’s flagship compositing program. We’re told that Foundry has been busy optimizing Nuke as well and that Intel is helping on that front as well.
Processor cores have been multiplying but professional software is not necessarily multi-threaded, which is kind of amazing in this day and age. Intel first introduced hyperthreading in 2002. And, do you know what? Major software vendors did not stop everything and rewrite their code to take advantage of threading because rewriting code for an established product is difficult. Not every application lends itself to parallelism and the act of parallelizing code is difficult and might not even produce expected results.
Part of the problem is that the tools for parallelizing code are evolving. The processors that can chew up parallel threads have been out there but tools like VTune and the TBB library didn’t turn up until much later, and vendors aren’t really getting instruction manuals. What’s interesting is that Intel is taking an active role in the Foundry update of one of its major products, and it’s a pretty specialized product to boot. Rendering is at the heart of Katana’s job description so it’s a good candidate.
Competition is heating up among semiconductor makers, most notably Intel and AMD. It looks like we’re in for a season of escalating core counts, but the dirty little secret is that it doesn’t matter all that much for a lot of programs. We’re thinking that Intel and AMD are going to have to get their hands dirty and get in there and help ISVs optimize their code if they want to see their software programs take better advantage of multi-core processors.
To find out more about Intel and Foundry’s collaboration on Katana 3.5, read Intel’s White Paper here.