medicine sun
medicine
About Me
Connect
LOCATION
Takahashi,
Japan
WEBSITE
Houdini Skills
Availability
Not Specified
Recent Forum Posts
Would Rewriting Houdini’s VEX Using C++20 Significantly Boos Jan. 6, 2025, 4:10 a.m.
animatrix_
Rewriting VEX in C++20 wouldn’t make much difference in performance IMO. VEX is already optimized for Houdini, and runtime or compilation speed gains would be negligible. The real performance improvements would come from changes to the VEX compiler and addressing current bottlenecks, like:
Batch Attribute Access: Fetching attributes one by one is a major slowdown. Functions to fetch multiple attributes at once would reduce overhead significantly.
Geometry Creation: Creating geometry in VEX is much slower than with HDK. Optimizing this process would bring massive performance gains IMO.
Compiler Optimizations: Smarter optimizations at the compiler level, like better vectorization or reducing redundant operations, would yield much bigger benefits than switching to newer C++ versions IMO.
Right now with complex code, matching, approaching, and sometimes surpassing C++ speeds with VEX requires a lot of tricks and a deep understanding of how to write highly optimized VEX code.
Thanks for the professional response
Would Rewriting Houdini’s VEX Using C++20 Significantly Boos Jan. 6, 2025, 4:05 a.m.
tamteThat's very helpful. I will explore this website. Thank you
While I can't speak to how or whether using c++20 or c++23 would affect performance or compilation time
Houdini tries to follow VFX reference platform [vfxplatform.com] for maximum compatibility, and that still suggests c++17 even for 2025
Would Rewriting Houdini’s VEX Using C++20 Significantly Boos Jan. 2, 2025, 9:58 a.m.
what if VEX were reimplemented using C++20? Would it lead to noticeable performance improvements in terms of compilation