[Bf-blender-cvs] [4c92fb67153] master: Libmv: Tweak default logging verbosity level

Sergey Sharybin noreply at git.blender.org
Tue Dec 1 14:56:12 CET 2020


Commit: 4c92fb671539bc936fab9177822c889ab372434d
Author: Sergey Sharybin
Date:   Tue Dec 1 14:52:08 2020 +0100
Branches: master
https://developer.blender.org/rB4c92fb671539bc936fab9177822c889ab372434d

Libmv: Tweak default logging verbosity level

Log to verbosity level 1 rather than INFO severity.

Avoids a lot of overhead coming from construction of the INFO stream
and improves performance and threadability of code which uses logging.

This makes tracking of 250 frames of a track of default settings to
drop down from 0.6sec to 0.4sec.

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

M	intern/libmv/libmv/logging/logging.h

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

diff --git a/intern/libmv/libmv/logging/logging.h b/intern/libmv/libmv/logging/logging.h
index ce7f3201516..0f4f99e3895 100644
--- a/intern/libmv/libmv/logging/logging.h
+++ b/intern/libmv/libmv/logging/logging.h
@@ -23,6 +23,20 @@
 
 #include <glog/logging.h>
 
-#define LG LOG(INFO)
+// Note on logging severity and verbosity level.
+//
+// Reserve LOG(INFO) for messages which are always to be put to log and don't
+// use the INFO severity for the debugging/troubleshooting type of messages.
+// Some reasoning behind:
+//
+//   - Library integration would want to disable "noisy" messages coming from
+//     algorithms.
+//
+//   - It is not possible to disable INFO severity entirely: there is enough
+//     of preparation being done for the message stream. What is even worse
+//     is that such stream preparation causes measurable time spent in spin
+//     lock, ruining multi-threading.
+
+#define LG VLOG(1)
 
 #endif  // LIBMV_LOGGING_LOGGING_H



More information about the Bf-blender-cvs mailing list