Merge pull request #15761 from alalek:core_trace_itt_parameter

pull/15793/head
Alexander Alekhin 6 years ago
commit d8ab83600b
  1. 15
      modules/core/src/trace.cpp

@ -196,15 +196,28 @@ static __itt_domain* domain = NULL;
static bool isITTEnabled() static bool isITTEnabled()
{ {
static bool isInitialized = false; static volatile bool isInitialized = false;
static bool isEnabled = false; static bool isEnabled = false;
if (!isInitialized) if (!isInitialized)
{
cv::AutoLock lock(cv::getInitializationMutex());
if (!isInitialized)
{
bool param_traceITTEnable = utils::getConfigurationParameterBool("OPENCV_TRACE_ITT_ENABLE", true);
if (param_traceITTEnable)
{ {
isEnabled = !!(__itt_api_version()); isEnabled = !!(__itt_api_version());
CV_LOG_ITT("ITT is " << (isEnabled ? "enabled" : "disabled")); CV_LOG_ITT("ITT is " << (isEnabled ? "enabled" : "disabled"));
domain = __itt_domain_create("OpenCVTrace"); domain = __itt_domain_create("OpenCVTrace");
}
else
{
CV_LOG_ITT("ITT is disabled through OpenCV parameter");
isEnabled = false;
}
isInitialized = true; isInitialized = true;
} }
}
return isEnabled; return isEnabled;
} }
#endif #endif

Loading…
Cancel
Save