diff options
author | Jacques Lucke <jacques@blender.org> | 2022-09-20 11:59:12 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2022-09-20 12:08:05 +0300 |
commit | 5c81d3bd4691214164a7f071d239ef6c84dba8dc (patch) | |
tree | cbab752ca58da40b45c15540707a2b0a22d769da /source/blender/functions/FN_lazy_function_execute.hh | |
parent | 7a239812ca55153fc9751b6a87bc5c4deb76456b (diff) |
Geometry Nodes: improve evaluator with lazy threading
In large node setup the threading overhead was sometimes very significant.
That's especially true when most nodes do very little work.
This commit improves the scheduling by not using multi-threading in many
cases unless it's likely that it will be worth it. For more details see the comments
in `BLI_lazy_threading.hh`.
Differential Revision: https://developer.blender.org/D15976
Diffstat (limited to 'source/blender/functions/FN_lazy_function_execute.hh')
-rw-r--r-- | source/blender/functions/FN_lazy_function_execute.hh | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/source/blender/functions/FN_lazy_function_execute.hh b/source/blender/functions/FN_lazy_function_execute.hh index ade23ad17c7..31bbddf5baf 100644 --- a/source/blender/functions/FN_lazy_function_execute.hh +++ b/source/blender/functions/FN_lazy_function_execute.hh @@ -41,6 +41,7 @@ class BasicParams : public Params { bool output_was_set_impl(const int index) const override; ValueUsage get_output_usage_impl(const int index) const override; void set_input_unused_impl(const int index) override; + bool try_enable_multi_threading_impl() override; }; namespace detail { |