[Bf-blender-cvs] [f5652ce6b2c] temp-geometry-nodes-evaluator-refactor: show node timings

Jacques Lucke noreply at git.blender.org
Thu Jun 30 23:32:38 CEST 2022


Commit: f5652ce6b2c0da7b3f7a0bce9001a7e3a17407e8
Author: Jacques Lucke
Date:   Thu Jun 30 23:31:15 2022 +0200
Branches: temp-geometry-nodes-evaluator-refactor
https://developer.blender.org/rBf5652ce6b2c0da7b3f7a0bce9001a7e3a17407e8

show node timings

===================================================================

M	source/blender/editors/space_node/node_draw.cc
M	source/blender/nodes/intern/geometry_nodes_to_lazy_function_graph.cc

===================================================================

diff --git a/source/blender/editors/space_node/node_draw.cc b/source/blender/editors/space_node/node_draw.cc
index dd0688bdaaf..10f7245d47a 100644
--- a/source/blender/editors/space_node/node_draw.cc
+++ b/source/blender/editors/space_node/node_draw.cc
@@ -1677,7 +1677,7 @@ static std::optional<std::chrono::nanoseconds> node_get_execution_time(
       else {
         if (const GeoNodeLog *node_log = tree_log->nodes.lookup_ptr_as(tnode->name)) {
           found_node = true;
-          run_time = node_log->run_time;
+          run_time += node_log->run_time;
         }
       }
     }
diff --git a/source/blender/nodes/intern/geometry_nodes_to_lazy_function_graph.cc b/source/blender/nodes/intern/geometry_nodes_to_lazy_function_graph.cc
index 74bf17e2441..7adcf057422 100644
--- a/source/blender/nodes/intern/geometry_nodes_to_lazy_function_graph.cc
+++ b/source/blender/nodes/intern/geometry_nodes_to_lazy_function_graph.cc
@@ -111,19 +111,16 @@ class GeometryNodeLazyFunction : public LazyFunction {
     const bNode &bnode = *node_.bnode();
     BLI_assert(bnode.typeinfo->geometry_node_execute != nullptr);
 
-    geo_eval_log::GeoTreeLogger *tree_logger = nullptr;
     GeoNodesLFUserData *user_data = dynamic_cast<GeoNodesLFUserData *>(context.user_data);
-    if (user_data != nullptr) {
-      tree_logger = &user_data->modifier_data->eval_log->get_local_tree_logger(
-          *user_data->context_stack);
-    }
+    BLI_assert(user_data != nullptr);
 
     geo_eval_log::TimePoint start_time = geo_eval_log::Clock::now();
     bnode.typeinfo->geometry_node_execute(geo_params);
     geo_eval_log::TimePoint end_time = geo_eval_log::Clock::now();
 
+    geo_eval_log::GeoTreeLogger *tree_logger =
+        &user_data->modifier_data->eval_log->get_local_tree_logger(*user_data->context_stack);
     if (tree_logger != nullptr) {
-      std::cout << (end_time - start_time).count() << "\n";
       tree_logger->node_execution_times.append_as(node_.name(), start_time, end_time);
     }
   }
@@ -487,7 +484,15 @@ class GroupNodeFunction : public LazyFunction {
     LFContext group_context = context;
     group_context.user_data = &group_user_data;
 
+    geo_eval_log::TimePoint start_time = geo_eval_log::Clock::now();
     graph_executor_->execute(params, group_context);
+    geo_eval_log::TimePoint end_time = geo_eval_log::Clock::now();
+
+    geo_eval_log::GeoTreeLogger *tree_logger =
+        &user_data->modifier_data->eval_log->get_local_tree_logger(*user_data->context_stack);
+    if (tree_logger != nullptr) {
+      tree_logger->node_execution_times.append_as(group_node_.name(), start_time, end_time);
+    }
   }
 
   void *init_storage(LinearAllocator<> &allocator) const



More information about the Bf-blender-cvs mailing list