Trace log when remove texture caches + VectorAnimationManager 48/302948/1
authorEunki, Hong <eunkiki.hong@samsung.com>
Mon, 18 Dec 2023 04:28:01 +0000 (13:28 +0900)
committerEunki, Hong <eunkiki.hong@samsung.com>
Mon, 18 Dec 2023 04:29:22 +0000 (13:29 +0900)
Print some more logs when we has a lots number of events to execute during
post processor.

Change-Id: If2c2d8d62dc6969befb5d71ea84973a47b951af2
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
dali-toolkit/internal/texture-manager/texture-manager-impl.cpp
dali-toolkit/internal/visuals/animated-vector-image/vector-animation-manager.cpp
dali-toolkit/internal/visuals/npatch-loader.cpp

index d9f8f0f..db7ded1 100644 (file)
@@ -23,6 +23,7 @@
 #include <dali/devel-api/adaptor-framework/pixel-buffer.h>
 #include <dali/integration-api/adaptor-framework/adaptor.h>
 #include <dali/integration-api/debug.h>
+#include <dali/integration-api/trace.h>
 #include <dali/public-api/rendering/geometry.h>
 
 // INTERNAL HEADERS
@@ -37,6 +38,8 @@ constexpr auto INITIAL_HASH_NUMBER = size_t{0u};
 
 constexpr auto TEXTURE_INDEX      = 0u; ///< The Index for texture
 constexpr auto MASK_TEXTURE_INDEX = 1u; ///< The Index for mask texture
+
+DALI_INIT_TRACE_FILTER(gTraceFilter, DALI_TRACE_IMAGE_PERFORMANCE_MARKER, false);
 } // namespace
 
 namespace Dali
@@ -802,6 +805,18 @@ void TextureManager::Remove(const TextureManager::TextureId textureId)
 
 void TextureManager::ProcessRemoveQueue()
 {
+#ifdef TRACE_ENABLED
+  if(gTraceFilter && gTraceFilter->IsTraceEnabled())
+  {
+    if(mRemoveQueue.Count() > 0u)
+    {
+      std::ostringstream oss;
+      oss << "[" << mRemoveQueue.Count() << "]";
+      DALI_TRACE_BEGIN_WITH_MESSAGE(gTraceFilter, "DALI_TEXTURE_MANAGER_PROCESS_REMOVE_QUEUE", oss.str().c_str());
+    }
+  }
+#endif
+
   // Note that RemoveQueue is not be changed during Remove().
   for(auto&& textureId : mRemoveQueue)
   {
@@ -810,6 +825,19 @@ void TextureManager::ProcessRemoveQueue()
       Remove(textureId);
     }
   }
+
+#ifdef TRACE_ENABLED
+  if(gTraceFilter && gTraceFilter->IsTraceEnabled())
+  {
+    if(mRemoveQueue.Count() > 0u)
+    {
+      std::ostringstream oss;
+      oss << "[" << mRemoveQueue.Count() << "]";
+      DALI_TRACE_END_WITH_MESSAGE(gTraceFilter, "DALI_TEXTURE_MANAGER_PROCESS_REMOVE_QUEUE", oss.str().c_str());
+    }
+  }
+#endif
+
   mRemoveQueue.Clear();
 }
 
@@ -1005,6 +1033,7 @@ void TextureManager::ProcessLoadQueue()
       }
     }
   }
+
   mLoadQueue.Clear();
 }
 
index 59cd4ba..fda5168 100644 (file)
@@ -21,6 +21,7 @@
 // EXTERNAL INCLUDES
 #include <dali/integration-api/adaptor-framework/adaptor.h>
 #include <dali/integration-api/debug.h>
+#include <dali/integration-api/trace.h>
 
 // INTERNAL INCLUDES
 #include <dali-toolkit/internal/visuals/animated-vector-image/vector-animation-thread.h>
@@ -37,6 +38,8 @@ namespace
 Debug::Filter* gVectorAnimationLogFilter = Debug::Filter::New(Debug::NoLogging, false, "LOG_VECTOR_ANIMATION");
 #endif
 
+DALI_INIT_TRACE_FILTER(gTraceFilter, DALI_TRACE_IMAGE_PERFORMANCE_MARKER, false);
+
 } // unnamed namespace
 
 VectorAnimationManager::VectorAnimationManager()
@@ -122,10 +125,34 @@ void VectorAnimationManager::UnregisterEventCallback(CallbackBase* callback)
 
 void VectorAnimationManager::Process(bool postProcessor)
 {
+#ifdef TRACE_ENABLED
+  if(gTraceFilter && gTraceFilter->IsTraceEnabled())
+  {
+    if(mEventCallbacks.size() > 0u)
+    {
+      std::ostringstream oss;
+      oss << "[" << mEventCallbacks.size() << "]";
+      DALI_TRACE_BEGIN_WITH_MESSAGE(gTraceFilter, "DALI_VECTOR_ANIMATION_MANAGER_PROCESS", oss.str().c_str());
+    }
+  }
+#endif
+
   for(auto&& iter : mEventCallbacks)
   {
     CallbackBase::Execute(*iter);
   }
+
+#ifdef TRACE_ENABLED
+  if(gTraceFilter && gTraceFilter->IsTraceEnabled())
+  {
+    if(mEventCallbacks.size() > 0u)
+    {
+      std::ostringstream oss;
+      oss << "[" << mEventCallbacks.size() << "]";
+      DALI_TRACE_END_WITH_MESSAGE(gTraceFilter, "DALI_VECTOR_ANIMATION_MANAGER_PROCESS", oss.str().c_str());
+    }
+  }
+#endif
   mEventCallbacks.clear();
 
   Adaptor::Get().UnregisterProcessor(*this, true);
index 16b49be..f13a9c2 100644 (file)
@@ -25,6 +25,7 @@
 #include <dali/devel-api/common/hash.h>
 #include <dali/integration-api/adaptor-framework/adaptor.h>
 #include <dali/integration-api/debug.h>
+#include <dali/integration-api/trace.h>
 
 namespace Dali
 {
@@ -37,6 +38,7 @@ namespace
 constexpr auto INVALID_CACHE_INDEX = int32_t{-1}; ///< Invalid Cache index
 constexpr auto UNINITIALIZED_ID    = int32_t{0};  ///< uninitialised id, use to initialize ids
 
+DALI_INIT_TRACE_FILTER(gTraceFilter, DALI_TRACE_IMAGE_PERFORMANCE_MARKER, false);
 } // Anonymous namespace
 
 NPatchLoader::NPatchLoader()
@@ -182,10 +184,35 @@ void NPatchLoader::Remove(NPatchData::NPatchDataId id, TextureUploadObserver* te
 
 void NPatchLoader::Process(bool postProcessor)
 {
+#ifdef TRACE_ENABLED
+  if(gTraceFilter && gTraceFilter->IsTraceEnabled())
+  {
+    if(mRemoveQueue.size() > 0u)
+    {
+      std::ostringstream oss;
+      oss << "[" << mRemoveQueue.size() << "]";
+      DALI_TRACE_BEGIN_WITH_MESSAGE(gTraceFilter, "DALI_NPATCH_LOADER_PROCESS_REMOVE_QUEUE", oss.str().c_str());
+    }
+  }
+#endif
+
   for(auto& iter : mRemoveQueue)
   {
     Remove(iter.first, iter.second);
   }
+
+#ifdef TRACE_ENABLED
+  if(gTraceFilter && gTraceFilter->IsTraceEnabled())
+  {
+    if(mRemoveQueue.size() > 0u)
+    {
+      std::ostringstream oss;
+      oss << "[" << mRemoveQueue.size() << "]";
+      DALI_TRACE_END_WITH_MESSAGE(gTraceFilter, "DALI_NPATCH_LOADER_PROCESS_REMOVE_QUEUE", oss.str().c_str());
+    }
+  }
+#endif
+
   mRemoveQueue.clear();
 
   if(Adaptor::IsAvailable())