Karma XPU Feature Gaps: Shadow Linking, Displacement, Dome Lights
Karma XPU is designed as a high-performance alternative to Karma CPU, using both CPU and GPU resources, but SideFX notes that it can have less functionality than the CPU-only engine. For artists planning a shot, these Karma XPU limitations are easier to manage when you know about them before building the scene. This article focuses on areas where XPU can behave differently or impose specific conditions, including Shadow Linking, Displacement, Render Visibility, and Dome Lights. Some settings have strict limits, while others support only certain geometry or shader types. These details do not make XPU unsuitable for production. They simply give you useful information for choosing the right approach before a shot becomes difficult to change. Since SideFX continues to expand XPU across Houdini releases, always check the documentation for the exact version you are using.
Feature gaps rarely cause trouble when you first read about them. They become a problem when the shot is already built and a shadow, displacement effect, or light setup does not behave as expected. The list below is designed to be checked before you start building the shot, not after the render exposes a limitation.
Table of Contents
Why the Gaps Exist
The main reason is architectural. Karma XPU uses GPU hardware acceleration through OptiX alongside the CPU-based Embree engine, while Karma CPU runs entirely on the CPU. GPU acceleration brings much higher performance, but it also comes with a different set of hardware constraints.
SideFX describes XPU as a high-performance alternative to Karma CPU rather than a complete replacement, and its feature set can be more limited. That difference explains why some Karma features arrive later or work under narrower conditions in XPU.
These Karma XPU limitations are therefore better understood as consequences of the renderer’s architecture, not as production failures. The list can change with each Houdini release as SideFX adds more capabilities and expands existing ones.

Main Reference Table: Karma XPU Features in Houdini 22
Below is a practical reference for several Karma XPU features and their current support status. Shadow Linking is now listed as supported in the Houdini 22 Karma XPU documentation, with a maximum of four shadow-linking rules or groups per scene. However, the Light Linker documentation still contains older information stating that Shadow Linking is limited to Karma CPU. This appears to be a documentation inconsistency, so check the behavior in the exact Houdini version you are using before planning a shot.
| Feature | Karma XPU Status | Practical Impact |
| Shadow Linking | Supported, with a maximum of 4 shadow-linking rules/groups per scene. Check the limit for your Houdini version. | Shots with many characters requiring separate shadow control can reach the limit. |
| Custom Tracesets | Maximum of 4 trace sets per scene | Shares the same limit with the SSS Traceset |
| SSS Traceset | Shares the 4-trace-set limit with Custom Tracesets | An easy detail to overlook when planning a shot |
| Displacement as Bump | Only supports float/scalar displacement maps with the Signature set to Float | Vector displacement maps cannot be used in this mode |
| Displacement Style | Supports MtlX Standard Surface and MtlX OpenPBR Surface with float/scalar displacement | Material and displacement setup needs to follow XPU’s supported configuration |
| Stencil Map / Threshold | Only supports Polymesh | Does not apply to other geometry types |
| Render Visibility | Supports only the primary and shadow components | Visibility control is less granular than on Karma CPU |
| Disable Backface Culling | Not supported for USD BasisCurves | The geometry setup needs to account for this limitation |
| Dome Light | Supports only lat-long environment map textures on dome lights | Sixpack and cube map environment maps are not supported |
The Ones That Bite Most Often in Production
These are the details that can cause trouble once a shot is already in production, especially when lighting and shading become more complex.
- Shared four-traceset limit: You can use up to four tracesets per scene, and Custom Tracesets and SSS Tracesets share this limit. If you plan four custom tracesets and then add an SSS traceset, you have already reached the maximum.
- Displacement: Displacement works, but only under specific conditions. Displacement as Bump on XPU supports float displacement maps, and the Signature on the MtlX Image VOP must be set to Float. Vector displacement is not supported in this mode. The setup also has restrictions when combining displacement through multiple MtlX Standard Surface VOPs. Displacement Style supports MtlX Standard Surface VOP and MtlX OpenPBR Surface VOP with float or scalar displacement. These are the kinds of Karma XPU limitations that are easier to handle before the shot reaches final look development.
- Shadow Linking: If a shot needs more shadow-linking rules or groups than the supported limit, plan for it before lighting starts. Finding the restriction late can force you to rebuild part of the lighting setup.
A Memory Tip Most People Miss
OptiX can reduce its device memory usage at the cost of performance through the KARMA_XPU_OPTIX_CURVE_OPT_LEVEL environment variable. A value of 1 uses less memory, 2 is the default, and 3 uses more memory. This can be particularly useful for scenes with heavy hair or fur, where curve data can consume a significant amount of VRAM.
Since XPU does not provide out-of-core rendering, every practical way to reduce VRAM usage can help keep demanding scenes within the available memory.

How to Plan Around the Gaps
A little planning before you build the shot can prevent feature limitations from becoming expensive changes later.
- Check the documentation first. Match your lighting and shading requirements against the Karma XPU documentation for the exact Houdini version you are running.
- Test both delegates. Render a frame with XPU and CPU, then compare them at final output size, especially around shadows and displacement.
- Choose CPU early when needed. If the shot depends on a feature that XPU does not support, decide on Karma CPU before production begins.
- Document the decision. Record the chosen delegate in the project notes and keep it consistent, because XPU and CPU are not guaranteed to produce pixel-identical results.
iRender: An Option for Karma Projects
Once the render delegate is decided, hardware becomes the next consideration. If you choose Karma CPU for shots that need unsupported XPU features, look for strong CPU performance and plenty of RAM. If you use XPU, both VRAM and CPU resources matter because XPU uses both during rendering.
iRender provides cloud workstations with AMD Ryzen™ Threadripper™ PRO 3955WX and 5975WX CPUs, offering 16 to 32 cores, up to 256GB RAM, and RTX 5090 32GB or RTX 4090 24GB GPUs. With pay-as-you-go and hourly-to-monthly rental options, you can add capacity when your existing hardware is not enough for a Houdini Karma project.
The feature gaps discussed above come from the renderer, not the workstation. No rented configuration can make Karma XPU support a feature it does not currently provide. The useful role of extra hardware starts after you have chosen the delegate and know what the shot requires.
Maximum Speed – Absolute Freedom. Take control of your VFX workflow with iRender’s dedicated GPU servers. Render with iRender →
FAQ
Does Karma XPU support shadow linking?
Yes. Karma XPU supports Shadow Linking, with a maximum of four shadow-linking rules or groups per scene in the Houdini 22 documentation. This limit matters when a shot requires separate shadow control for many objects or characters. Plan the setup early, because reaching the limit during lighting can require changes to the scene structure or lighting workflow.
Why does displacement not work in Karma XPU?
Displacement does work in Karma XPU, but some modes have specific requirements. Displacement as Bump supports float or scalar displacement maps, and the MtlX Image VOP Signature must be set to Float. Vector displacement is not supported in this mode. Displacement Style also supports only MtlX Standard Surface and MtlX OpenPBR Surface with float or scalar displacement.
What features are missing from Karma XPU compared to Karma CPU?
Karma XPU has a more limited feature set than Karma CPU, although the exact differences can change between Houdini releases. Some features support only specific geometry or shader configurations, while others have scene-level limits, such as tracesets and Shadow Linking. These Karma XPU limitations are important to check before production, especially when a shot depends heavily on displacement, visibility, or advanced lighting control.
Pingback:Unreal Keeps Crashing When I Render 8K Stills or Long Sequences - VFXRendering | 9 October, 2026
|