Refactor PerfCounters initialization. Allow only 1 engine type at once

Change-Id: I14ba28adb1926b0e67e5b147b7391a7284617c29
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
This commit is contained in:
Dunajski, Bartosz
2019-12-19 10:04:04 +01:00
committed by sys_ocldev
parent bfa1164675
commit 8f5e9c8a3a
4 changed files with 68 additions and 44 deletions

View File

@@ -29,24 +29,20 @@ uint32_t PerformanceCounters::getReferenceNumber() {
return referenceCounter;
}
//////////////////////////////////////////////////////
// PerformanceCounters::isAvailable
//////////////////////////////////////////////////////
bool PerformanceCounters::isAvailable() {
return available;
}
//////////////////////////////////////////////////////
// PerformanceCounters::enable
//////////////////////////////////////////////////////
void PerformanceCounters::enable() {
bool PerformanceCounters::enable(bool ccsEngine) {
std::lock_guard<std::mutex> lockMutex(mutex);
if (referenceCounter == 0) {
available = openMetricsLibrary();
this->usingCcsEngine = ccsEngine;
}
referenceCounter++;
return available && (this->usingCcsEngine == ccsEngine);
}
//////////////////////////////////////////////////////