[Bf-blender-cvs] [3a3bebc3eb2] profiler-editor: add profiling to a few more places

Jacques Lucke noreply at git.blender.org
Thu Apr 29 11:30:50 CEST 2021


Commit: 3a3bebc3eb23aced4255c482864fb7c4ac2cdfaa
Author: Jacques Lucke
Date:   Wed Apr 28 16:38:58 2021 +0200
Branches: profiler-editor
https://developer.blender.org/rB3a3bebc3eb23aced4255c482864fb7c4ac2cdfaa

add profiling to a few more places

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

M	source/blender/blenkernel/intern/DerivedMesh.cc
M	source/blender/blenkernel/intern/modifier.c
M	source/blender/modifiers/intern/MOD_nodes_evaluator.cc

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

diff --git a/source/blender/blenkernel/intern/DerivedMesh.cc b/source/blender/blenkernel/intern/DerivedMesh.cc
index 9fbbb227467..771ab8e2830 100644
--- a/source/blender/blenkernel/intern/DerivedMesh.cc
+++ b/source/blender/blenkernel/intern/DerivedMesh.cc
@@ -2069,7 +2069,7 @@ void makeDerivedMesh(struct Depsgraph *depsgraph,
                      BMEditMesh *em,
                      const CustomData_MeshMasks *dataMask)
 {
-  BLI_PROFILE_SCOPE(__func__);
+  BLI_PROFILE_SCOPE((std::string(ob->id.name) + " Modifiers").c_str());
   bool need_mapping;
   CustomData_MeshMasks cddata_masks = *dataMask;
   object_get_datamask(depsgraph, ob, &cddata_masks, &need_mapping);
diff --git a/source/blender/blenkernel/intern/modifier.c b/source/blender/blenkernel/intern/modifier.c
index 34b7c4234ec..0fc3ac32040 100644
--- a/source/blender/blenkernel/intern/modifier.c
+++ b/source/blender/blenkernel/intern/modifier.c
@@ -51,6 +51,7 @@
 #include "BLI_linklist.h"
 #include "BLI_listbase.h"
 #include "BLI_path_util.h"
+#include "BLI_profile.h"
 #include "BLI_session_uuid.h"
 #include "BLI_string.h"
 #include "BLI_string_utils.h"
@@ -1052,7 +1053,11 @@ struct Mesh *BKE_modifier_modify_mesh(ModifierData *md,
   if (mti->dependsOnNormals && mti->dependsOnNormals(md)) {
     modwrap_dependsOnNormals(me);
   }
-  return mti->modifyMesh(md, ctx, me);
+  BLI_ProfileTask profile_task;
+  BLI_profile_task_begin(&profile_task, md->name);
+  Mesh *new_mesh = mti->modifyMesh(md, ctx, me);
+  BLI_profile_task_end(&profile_task);
+  return new_mesh;
 }
 
 void BKE_modifier_deform_verts(ModifierData *md,
@@ -1067,7 +1072,10 @@ void BKE_modifier_deform_verts(ModifierData *md,
   if (me && mti->dependsOnNormals && mti->dependsOnNormals(md)) {
     modwrap_dependsOnNormals(me);
   }
+  BLI_ProfileTask profile_task;
+  BLI_profile_task_begin(&profile_task, md->name);
   mti->deformVerts(md, ctx, me, vertexCos, numVerts);
+  BLI_profile_task_end(&profile_task);
 }
 
 void BKE_modifier_deform_vertsEM(ModifierData *md,
diff --git a/source/blender/modifiers/intern/MOD_nodes_evaluator.cc b/source/blender/modifiers/intern/MOD_nodes_evaluator.cc
index aa35f5c540f..b04c9f7d2a6 100644
--- a/source/blender/modifiers/intern/MOD_nodes_evaluator.cc
+++ b/source/blender/modifiers/intern/MOD_nodes_evaluator.cc
@@ -24,6 +24,8 @@
 #include "FN_generic_value_map.hh"
 #include "FN_multi_function.hh"
 
+#include "BLI_profile.hh"
+
 namespace blender::modifiers::geometry_nodes {
 
 using bke::PersistentCollectionHandle;
@@ -276,6 +278,7 @@ class GeometryNodesEvaluator {
 
   void execute_node(const DNode node, NodeParamsProvider &params_provider)
   {
+    BLI_PROFILE_SCOPE(node->name().c_str());
     const bNode &bnode = *params_provider.dnode->bnode();
 
     /* Use the geometry-node-execute callback if it exists. */



More information about the Bf-blender-cvs mailing list