diff --git a/level_zero/tools/source/metrics/linux/os_metric_enumeration_imp_linux.cpp b/level_zero/tools/source/metrics/linux/os_metric_enumeration_imp_linux.cpp index 0a4cbca2e4..4358ad8fcc 100644 --- a/level_zero/tools/source/metrics/linux/os_metric_enumeration_imp_linux.cpp +++ b/level_zero/tools/source/metrics/linux/os_metric_enumeration_imp_linux.cpp @@ -8,7 +8,6 @@ #include "shared/source/os_interface/linux/drm_neo.h" #include "shared/source/os_interface/linux/sys_calls.h" #include "shared/source/os_interface/os_interface.h" -#include "shared/source/utilities/io_functions.h" #include "level_zero/tools/source/metrics/metric_enumeration_imp.h" @@ -77,29 +76,4 @@ MetricsDiscovery::IAdapter_1_9 *MetricEnumeration::getMetricsAdapter() { return nullptr; } -bool MetricEnumeration::isReportTriggerAvailable() { - - const char *perfStreamParanoidFile = "/proc/sys/dev/i915/perf_stream_paranoid"; - bool reportTriggerAvailable = false; - - FILE *fileDescriptor = NEO::IoFunctions::fopenPtr(perfStreamParanoidFile, "rb"); - if (fileDescriptor != nullptr) { - char paranoidVal[2] = {0}; - size_t bytesRead = NEO::IoFunctions::freadPtr(¶noidVal[0], 1, 1, fileDescriptor); - NEO::IoFunctions::fclosePtr(fileDescriptor); - - if (bytesRead == 1) { - reportTriggerAvailable = strncmp(paranoidVal, "0", 1) == 0; - } - } - - if (!reportTriggerAvailable) { - NEO::printDebugString(NEO::DebugManager.flags.PrintDebugMessages.get(), stderr, "%s", - "INFO: Metrics Collection requires i915 paranoid mode to be disabled\n" - "INFO: set /proc/sys/dev/i915/perf_stream_paranoid to 0\n"); - } - - return reportTriggerAvailable; -} - } // namespace L0 diff --git a/level_zero/tools/source/metrics/metric.cpp b/level_zero/tools/source/metrics/metric.cpp index 9f82b77401..24aa3fb6f8 100644 --- a/level_zero/tools/source/metrics/metric.cpp +++ b/level_zero/tools/source/metrics/metric.cpp @@ -237,12 +237,6 @@ std::unique_ptr MetricContext::create(Device &device) { bool MetricContext::isMetricApiAvailable() { std::unique_ptr library = nullptr; - bool reportTriggerAvailable = MetricEnumeration::isReportTriggerAvailable(); - if (!reportTriggerAvailable) { - NEO::printDebugString(NEO::DebugManager.flags.PrintDebugMessages.get(), stderr, "%s", - "INFO: Metrics Initialization Failed !\n"); - return false; - } // Check Metrics Discovery availability. library.reset(NEO::OsLibrary::load(MetricEnumeration::getMetricsDiscoveryFilename())); diff --git a/level_zero/tools/source/metrics/metric_enumeration_imp.h b/level_zero/tools/source/metrics/metric_enumeration_imp.h index c0d3a5a12c..18378af34a 100644 --- a/level_zero/tools/source/metrics/metric_enumeration_imp.h +++ b/level_zero/tools/source/metrics/metric_enumeration_imp.h @@ -27,7 +27,6 @@ struct MetricEnumeration { virtual ze_result_t loadMetricsDiscovery(); static const char *getMetricsDiscoveryFilename(); - static bool isReportTriggerAvailable(); protected: ze_result_t initialize(); diff --git a/level_zero/tools/source/metrics/windows/os_metric_enumeration_imp_windows.cpp b/level_zero/tools/source/metrics/windows/os_metric_enumeration_imp_windows.cpp index a099a37acd..88b7131274 100644 --- a/level_zero/tools/source/metrics/windows/os_metric_enumeration_imp_windows.cpp +++ b/level_zero/tools/source/metrics/windows/os_metric_enumeration_imp_windows.cpp @@ -65,8 +65,4 @@ MetricsDiscovery::IAdapter_1_9 *MetricEnumeration::getMetricsAdapter() { return nullptr; } -bool MetricEnumeration::isReportTriggerAvailable() { - return true; -} - } // namespace L0 diff --git a/level_zero/tools/test/unit_tests/sources/metrics/linux/test_metric_query_pool_linux.cpp b/level_zero/tools/test/unit_tests/sources/metrics/linux/test_metric_query_pool_linux.cpp index ab1af46178..0110feb133 100644 --- a/level_zero/tools/test/unit_tests/sources/metrics/linux/test_metric_query_pool_linux.cpp +++ b/level_zero/tools/test/unit_tests/sources/metrics/linux/test_metric_query_pool_linux.cpp @@ -515,69 +515,5 @@ TEST_F(MetricEnumerationTestLinux, givenIncorrectDrmFileForFstatWhenGetMetricsAd EXPECT_EQ(mockMetricEnumeration->baseGetAdapterId(drmMajor, drmMinor), false); } -TEST(MetricsApiDependencyTest, givenReportTriggerAvailableWhenIsReportTriggerAvailableIsCalledThenReturnSuccess) { - - NEO::IoFunctions::mockFopenCalled = 0; - NEO::IoFunctions::mockFcloseCalled = 0; - VariableBackup mockFread(&NEO::IoFunctions::freadPtr, [](void *ptr, size_t size, size_t count, FILE *stream) -> size_t { - *(static_cast(ptr)) = '0'; - return size; - }); - - EXPECT_EQ(MetricEnumeration::isReportTriggerAvailable(), true); - EXPECT_EQ(NEO::IoFunctions::mockFopenCalled, 1u); - EXPECT_EQ(NEO::IoFunctions::mockFcloseCalled, 1u); -} - -TEST(MetricsApiDependencyTest, givenPerfStreamParanoidFileNotAvailableWhenIsReportTriggerAvailableIsCalledThenFailIsReturned) { - - VariableBackup mockFopen(&NEO::IoFunctions::fopenPtr, [](const char *filename, const char *mode) -> FILE * { - return nullptr; - }); - NEO::IoFunctions::mockFcloseCalled = 0; - NEO::IoFunctions::mockFreadCalled = 0; - EXPECT_EQ(MetricEnumeration::isReportTriggerAvailable(), false); - EXPECT_EQ(NEO::IoFunctions::mockFcloseCalled, 0u); - EXPECT_EQ(NEO::IoFunctions::mockFreadCalled, 0u); -} - -TEST(MetricsApiDependencyTest, givenPerfStreamParanoidFileAvailableWithNoDataWhenIsReportTriggerAvailableIsCalledThenFailIsReturned) { - - NEO::IoFunctions::mockFopenCalled = 0; - NEO::IoFunctions::mockFcloseCalled = 0; - VariableBackup mockFread(&NEO::IoFunctions::freadPtr, [](void *ptr, size_t size, size_t count, FILE *stream) -> size_t { - return 0; - }); - EXPECT_EQ(MetricEnumeration::isReportTriggerAvailable(), false); - EXPECT_EQ(NEO::IoFunctions::mockFopenCalled, 1u); - EXPECT_EQ(NEO::IoFunctions::mockFcloseCalled, 1u); -} - -TEST(MetricsApiDependencyTest, givenPerfStreamParanoidFileAvailableWithDataOtherThanZeroWhenIsReportTriggerAvailableIsCalledThenFailIsReturned) { - - NEO::IoFunctions::mockFopenCalled = 0; - NEO::IoFunctions::mockFcloseCalled = 0; - VariableBackup mockFread(&NEO::IoFunctions::freadPtr, [](void *ptr, size_t size, size_t count, FILE *stream) -> size_t { - *(static_cast(ptr)) = '1'; - return 1; - }); - EXPECT_EQ(MetricEnumeration::isReportTriggerAvailable(), false); - EXPECT_EQ(NEO::IoFunctions::mockFopenCalled, 1u); - EXPECT_EQ(NEO::IoFunctions::mockFcloseCalled, 1u); -} - -TEST(MetricsApiDependencyTest, givenReportTriggerAvailableWhenIsMetricApiAvailableIsCalledThenReturnSuccessForReportTriggerAvailability) { - - NEO::IoFunctions::mockFopenCalled = 0; - NEO::IoFunctions::mockFcloseCalled = 0; - VariableBackup mockFread(&NEO::IoFunctions::freadPtr, [](void *ptr, size_t size, size_t count, FILE *stream) -> size_t { - *(static_cast(ptr)) = '0'; - return size; - }); - MetricContext::isMetricApiAvailable(); - EXPECT_EQ(NEO::IoFunctions::mockFopenCalled, 1u); - EXPECT_EQ(NEO::IoFunctions::mockFcloseCalled, 1u); -} - } // namespace ult } // namespace L0