Maya 2023.2 includes significant enhancements to the GPU deformation workflow. One of them addresses the issue of frequent rebuilding (or repartitioning) of the graph for GPU evaluation which could sometimes be disruptive on large scenes when changes occur. Now, creating and deleting keys no longer causes unnecessary repartitioning. Also, a new scheduling mode greatly reduces repartitioning when using Display Layers or Isolate Select to hide or show objects.
Another major change is that the Evaluation Manager now schedules the nodes for the GPU in more granular fashion instead of as a small number of big clusters. This allows for better pruning of the graph.
The Evaluator now claims nodes that potentially go on the GPU instead of only nodes that have been fully checked and verified to be evaluated on the GPU. When GPU evaluation is turned on, the evaluator now dynamically decides which nodes are evaluated on the GPU or on the CPU after repartitioning, making it more responsive to dynamic changes and greatly reducing the need for repartitioning.
GPU Download/Rebuild Optimization: approx 250k vert character with 3 layer facial rig + 115 joints
For example, the character in the above illustration has a necklace which has a uvPin node that attaches the rigid pendant to the ribbon. The ribbon itself is deformed by the body geometry. Previously, because a uvPin or follicle could not be on the GPU, the entire character could not be on the GPU.
In this particular case, the pendant prohibited the necklace from going on the GPU, which in turn, blocked the character's entire body from going on the GPU. Workarounds often included introducing Parallel deformation structures at lower resolutions.
GPU Download Example: Top is with GPU Download disabled. Bottom is enabled with more green nodes now running on GPU
To provide insight into what is going on, a number of UI and debugging tools have been added to the Evaluation Toolkit. For example, you can see in the Viewport how many nodes are claimed by the evaluator and which of these are evaluated on the GPU.
GPU Outliner
You can also use this to generate a partial visualization of the deformation graph to focus on just a small part of the scene.
Since the efficiency of the GPU evaluation heavily depends on the available hardware, sometimes you might need manual control to prohibit nodes from going on the GPU.
Use the Outliner to set a variety of modes to block nodes (or sets of nodes) from going on the GPU.
See the Evaluation Toolkit topic for this and other updates.