2022-10-04 Render & Cycles Meeting

Attendees

  • Brecht Van Lommel (Blender)
  • Thomas Dinges (Blender)
  • Weizhen Huang (interning at Blender)
  • Christophe Hery (Meta)
  • Brian Savery (AMD)
  • Nikita Sirgienko (Intel)
  • Michael Jones (Apple)

Notes

  • Path Guiding:
    • Landed in time for Blender 3.4.
    • Waiting for OpenPGL 0.4 release to upgrade to new version.
    • Thomas will make topic to gather images for release notes.
  • Many Lights Sampling:
    • Brecht and Weizhen plan to work on completing the branch to be ready for master.
    • Task was updated to reflect current status, Brecht is adding test files to regressions and benchmarks.
  • New PMJ Pattern:
    • Some issues found with high sample counts, Nathan looking into solution.
  • OSL on GPU:
    • Patrick did various update, and found a solution that avoids having to build OSL with CUDA/OptiX. Still ideally would go along with changes upstream to avoid having to duplicate code.
  • Apple Metal:
    • Michael will create a task with design for shader specializations to improve performance, in a way that should not get in the way of users.
    • Michael experimented with using multiple devices for the same GPU, and found performance improvements. Brecht suggested to look at using multiple queues instead, since it gives more opportunity to extract coherence in complex scenes if there is a single integrator state array.
    • Also a task will be created with proposal for better load balancing for CPU + GPU rendering, which is especially helpful on M1/M2 devices with unified memory. In general multi-device rendering is an important topic to tackle, though Blender developers have not found the time to tackle it yet, any contributions are welcome, be it for CPU + GPU or GPU + GPU.
  • AMD HIP:
    • ROCm 5.3 was released, Linux users are recommended to upgrade to fix the texture bug.
    • Graphics interop still needs to be enabled for HIP.
  • Intel OneAPI:
    • Brecht will review the direct linking patch again.
    • Nikita plans to commit changes to improve ahead-of-time compilation time. These will require more memory usage, will need to keep an eye on the buildbot to ensure it works.

Practical Info

This is a weekly video chat meeting for planning and discussion of Blender rendering development. Any contributor (developer, UI/UX designer, writer, …) working on rendering in Blender is welcome to join and add proposed items to the agenda.

For users and other interested parties, we ask to read the meeting notes instead so that the meeting can remain focused.

19 Likes

Any news about Principled V2?

7 Likes

No news at the moment. Lukas will do presentation on it at the Blender Conference at the end of this month, so there may be more details then.

17 Likes

Speaking of shaders… It would be nice if you would change the default behavior of the texture node. Right now, when you change a texture, the node switches back to the ‘default’ color space (i.e. doesn’t respect user’s choice of the color space) and that is very annoying. Example: If you have a normal / roughness / metallic map with the ‘color space’ set to ‘non-color’ - changing texture will set the color space back to SRGB. Long story short, when a user changes a texture, the texture node should ‘respect’ the previous ‘color space’ state (chosen by user).

It would also be nice to have DX/OGL switcher (converter) ‘embedded’ into the normal map node.

15 Likes

Quick question about OSL on GPU: will it support texture tiling like in CPU? I mean the tiling that reduces A LOT the memory usage, it was something already happening on the CPU, but someone commented that it was not supported in the GPU, however I think I’ve read something about that, so… will this be supported in OSL for CUDA/Optix?

2 Likes

No, that does not come with OSL on the GPU.

1 Like

I’m curious if “multi-device rendering” is referring to multi-processor rendering, like CPU + GPU, or possibly even multi-Mac network rendering, or if it is meant in a more abstract way, like some kind of hyperthreading on the same CPU / GPU?

It’s just referring to existing Cycles device preferences when you select multiple devices.

2 Likes

Thansk for the clarification :slight_smile:

1 Like