Skip to content

Commit e1ef9ac

Browse files
Revert "Metric Detect Paranoid mode and fail gracefully"
This reverts commit a720282358dff08fb36b95eaf9bf184efa315f48. This revert is to avoid suggesting to disable paranoid mode. This revert also avoids L0 metrics mandating paranoid mode setting. Related-To: LOCI-2822 Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
1 parent 9a39cad commit e1ef9ac

File tree

5 files changed

+0
-101
lines changed

5 files changed

+0
-101
lines changed

level_zero/tools/source/metrics/linux/os_metric_enumeration_imp_linux.cpp

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
#include "shared/source/os_interface/linux/drm_neo.h"
99
#include "shared/source/os_interface/linux/sys_calls.h"
1010
#include "shared/source/os_interface/os_interface.h"
11-
#include "shared/source/utilities/io_functions.h"
1211

1312
#include "level_zero/tools/source/metrics/metric_enumeration_imp.h"
1413

@@ -77,29 +76,4 @@ MetricsDiscovery::IAdapter_1_9 *MetricEnumeration::getMetricsAdapter() {
7776
return nullptr;
7877
}
7978

80-
bool MetricEnumeration::isReportTriggerAvailable() {
81-
82-
const char *perfStreamParanoidFile = "/proc/sys/dev/i915/perf_stream_paranoid";
83-
bool reportTriggerAvailable = false;
84-
85-
FILE *fileDescriptor = NEO::IoFunctions::fopenPtr(perfStreamParanoidFile, "rb");
86-
if (fileDescriptor != nullptr) {
87-
char paranoidVal[2] = {0};
88-
size_t bytesRead = NEO::IoFunctions::freadPtr(&paranoidVal[0], 1, 1, fileDescriptor);
89-
NEO::IoFunctions::fclosePtr(fileDescriptor);
90-
91-
if (bytesRead == 1) {
92-
reportTriggerAvailable = strncmp(paranoidVal, "0", 1) == 0;
93-
}
94-
}
95-
96-
if (!reportTriggerAvailable) {
97-
NEO::printDebugString(NEO::DebugManager.flags.PrintDebugMessages.get(), stderr, "%s",
98-
"INFO: Metrics Collection requires i915 paranoid mode to be disabled\n"
99-
"INFO: set /proc/sys/dev/i915/perf_stream_paranoid to 0\n");
100-
}
101-
102-
return reportTriggerAvailable;
103-
}
104-
10579
} // namespace L0

level_zero/tools/source/metrics/metric.cpp

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -237,12 +237,6 @@ std::unique_ptr<MetricContext> MetricContext::create(Device &device) {
237237
bool MetricContext::isMetricApiAvailable() {
238238

239239
std::unique_ptr<NEO::OsLibrary> library = nullptr;
240-
bool reportTriggerAvailable = MetricEnumeration::isReportTriggerAvailable();
241-
if (!reportTriggerAvailable) {
242-
NEO::printDebugString(NEO::DebugManager.flags.PrintDebugMessages.get(), stderr, "%s",
243-
"INFO: Metrics Initialization Failed !\n");
244-
return false;
245-
}
246240

247241
// Check Metrics Discovery availability.
248242
library.reset(NEO::OsLibrary::load(MetricEnumeration::getMetricsDiscoveryFilename()));

level_zero/tools/source/metrics/metric_enumeration_imp.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ struct MetricEnumeration {
2727

2828
virtual ze_result_t loadMetricsDiscovery();
2929
static const char *getMetricsDiscoveryFilename();
30-
static bool isReportTriggerAvailable();
3130

3231
protected:
3332
ze_result_t initialize();

level_zero/tools/source/metrics/windows/os_metric_enumeration_imp_windows.cpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,4 @@ MetricsDiscovery::IAdapter_1_9 *MetricEnumeration::getMetricsAdapter() {
6565
return nullptr;
6666
}
6767

68-
bool MetricEnumeration::isReportTriggerAvailable() {
69-
return true;
70-
}
71-
7268
} // namespace L0

level_zero/tools/test/unit_tests/sources/metrics/linux/test_metric_query_pool_linux.cpp

Lines changed: 0 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -515,69 +515,5 @@ TEST_F(MetricEnumerationTestLinux, givenIncorrectDrmFileForFstatWhenGetMetricsAd
515515
EXPECT_EQ(mockMetricEnumeration->baseGetAdapterId(drmMajor, drmMinor), false);
516516
}
517517

518-
TEST(MetricsApiDependencyTest, givenReportTriggerAvailableWhenIsReportTriggerAvailableIsCalledThenReturnSuccess) {
519-
520-
NEO::IoFunctions::mockFopenCalled = 0;
521-
NEO::IoFunctions::mockFcloseCalled = 0;
522-
VariableBackup<NEO::IoFunctions::freadFuncPtr> mockFread(&NEO::IoFunctions::freadPtr, [](void *ptr, size_t size, size_t count, FILE *stream) -> size_t {
523-
*(static_cast<uint8_t *>(ptr)) = '0';
524-
return size;
525-
});
526-
527-
EXPECT_EQ(MetricEnumeration::isReportTriggerAvailable(), true);
528-
EXPECT_EQ(NEO::IoFunctions::mockFopenCalled, 1u);
529-
EXPECT_EQ(NEO::IoFunctions::mockFcloseCalled, 1u);
530-
}
531-
532-
TEST(MetricsApiDependencyTest, givenPerfStreamParanoidFileNotAvailableWhenIsReportTriggerAvailableIsCalledThenFailIsReturned) {
533-
534-
VariableBackup<NEO::IoFunctions::fopenFuncPtr> mockFopen(&NEO::IoFunctions::fopenPtr, [](const char *filename, const char *mode) -> FILE * {
535-
return nullptr;
536-
});
537-
NEO::IoFunctions::mockFcloseCalled = 0;
538-
NEO::IoFunctions::mockFreadCalled = 0;
539-
EXPECT_EQ(MetricEnumeration::isReportTriggerAvailable(), false);
540-
EXPECT_EQ(NEO::IoFunctions::mockFcloseCalled, 0u);
541-
EXPECT_EQ(NEO::IoFunctions::mockFreadCalled, 0u);
542-
}
543-
544-
TEST(MetricsApiDependencyTest, givenPerfStreamParanoidFileAvailableWithNoDataWhenIsReportTriggerAvailableIsCalledThenFailIsReturned) {
545-
546-
NEO::IoFunctions::mockFopenCalled = 0;
547-
NEO::IoFunctions::mockFcloseCalled = 0;
548-
VariableBackup<NEO::IoFunctions::freadFuncPtr> mockFread(&NEO::IoFunctions::freadPtr, [](void *ptr, size_t size, size_t count, FILE *stream) -> size_t {
549-
return 0;
550-
});
551-
EXPECT_EQ(MetricEnumeration::isReportTriggerAvailable(), false);
552-
EXPECT_EQ(NEO::IoFunctions::mockFopenCalled, 1u);
553-
EXPECT_EQ(NEO::IoFunctions::mockFcloseCalled, 1u);
554-
}
555-
556-
TEST(MetricsApiDependencyTest, givenPerfStreamParanoidFileAvailableWithDataOtherThanZeroWhenIsReportTriggerAvailableIsCalledThenFailIsReturned) {
557-
558-
NEO::IoFunctions::mockFopenCalled = 0;
559-
NEO::IoFunctions::mockFcloseCalled = 0;
560-
VariableBackup<NEO::IoFunctions::freadFuncPtr> mockFread(&NEO::IoFunctions::freadPtr, [](void *ptr, size_t size, size_t count, FILE *stream) -> size_t {
561-
*(static_cast<uint8_t *>(ptr)) = '1';
562-
return 1;
563-
});
564-
EXPECT_EQ(MetricEnumeration::isReportTriggerAvailable(), false);
565-
EXPECT_EQ(NEO::IoFunctions::mockFopenCalled, 1u);
566-
EXPECT_EQ(NEO::IoFunctions::mockFcloseCalled, 1u);
567-
}
568-
569-
TEST(MetricsApiDependencyTest, givenReportTriggerAvailableWhenIsMetricApiAvailableIsCalledThenReturnSuccessForReportTriggerAvailability) {
570-
571-
NEO::IoFunctions::mockFopenCalled = 0;
572-
NEO::IoFunctions::mockFcloseCalled = 0;
573-
VariableBackup<NEO::IoFunctions::freadFuncPtr> mockFread(&NEO::IoFunctions::freadPtr, [](void *ptr, size_t size, size_t count, FILE *stream) -> size_t {
574-
*(static_cast<uint8_t *>(ptr)) = '0';
575-
return size;
576-
});
577-
MetricContext::isMetricApiAvailable();
578-
EXPECT_EQ(NEO::IoFunctions::mockFopenCalled, 1u);
579-
EXPECT_EQ(NEO::IoFunctions::mockFcloseCalled, 1u);
580-
}
581-
582518
} // namespace ult
583519
} // namespace L0

0 commit comments

Comments
 (0)