Revert "feature: Add support for OA buffer overflow"

This reverts commit b2d25174fb.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
This commit is contained in:
Compute-Runtime-Validation
2024-09-24 03:18:51 +02:00
committed by Compute-Runtime-Automation
parent 24682e702b
commit cb0b69a1cb
17 changed files with 40 additions and 1789 deletions

View File

@@ -321,30 +321,6 @@ ze_result_t MetricEnumeration::cacheMetricInformation() {
// 2. Find "OA" concurrent group.
if (strcmp(pConcurrentGroupParams->SymbolName, oaConcurrentGroupName) == 0) {
// Find the oaBufferOverflowInformation and store in member variable pOaBufferOverflowInformation
const uint32_t measurementInfoCount = pConcurrentGroupParams->IoMeasurementInformationCount;
MetricsDiscovery::IInformationLatest *oaBufferOverflowInformation = nullptr;
for (uint32_t i = 0; i < measurementInfoCount; ++i) {
MetricsDiscovery::IInformationLatest *ioMeasurement = pConcurrentGroup->GetIoMeasurementInformation(i);
DEBUG_BREAK_IF(ioMeasurement == nullptr);
if (ioMeasurement->GetParams()->SymbolName == std::string("BufferOverflow")) {
oaBufferOverflowInformation = ioMeasurement;
break;
}
}
// MDAPI checks for proper library initialization
if (oaBufferOverflowInformation == nullptr ||
oaBufferOverflowInformation->GetParams()->IoReadEquation->GetEquationElementsCount() != 1 ||
oaBufferOverflowInformation->GetParams()->IoReadEquation->GetEquationElement(0)->Type != MetricsDiscovery::EQUATION_ELEM_IMM_UINT64) {
METRICS_LOG_ERR("IoMeasurmentInformation is not as expected for OA %s", " ");
return ZE_RESULT_ERROR_UNKNOWN;
}
pOaBufferOverflowInformation = oaBufferOverflowInformation;
// Reserve memory for metric groups
metricGroups.reserve(pConcurrentGroupParams->MetricSetsCount);
@@ -717,11 +693,8 @@ ze_result_t OaMetricGroupImp::readIoStream(uint32_t &reportCount, uint8_t &repor
switch (readResult) {
case MetricsDiscovery::CC_OK:
case MetricsDiscovery::CC_READ_PENDING: {
MetricsDiscovery::IInformationLatest *oaBufferOverflowInformation = getMetricEnumeration().getOaBufferOverflowInformation();
const bool oaBufferOverflow = oaBufferOverflowInformation->GetParams()->IoReadEquation->GetEquationElement(0)->ImmediateUInt64 != 0;
return oaBufferOverflow ? ZE_RESULT_WARNING_DROPPED_DATA : ZE_RESULT_SUCCESS;
}
case MetricsDiscovery::CC_READ_PENDING:
return ZE_RESULT_SUCCESS;
default:
return ZE_RESULT_ERROR_UNKNOWN;

View File

@@ -76,7 +76,6 @@ struct MetricEnumeration {
getMetricResultType(const MetricsDiscovery::TMetricResultType sourceMetricResultType) const;
void getL0MetricPropertiesFromMdapiMetric(zet_metric_properties_t &l0MetricProps, MetricsDiscovery::IMetric_1_0 *mdapiMetric);
void getL0MetricPropertiesFromMdapiInformation(zet_metric_properties_t &l0MetricProps, MetricsDiscovery::IInformation_1_0 *mdapiInformation);
MetricsDiscovery::IInformationLatest *getOaBufferOverflowInformation() const { return pOaBufferOverflowInformation; }
protected:
ze_result_t initialize();
@@ -116,7 +115,6 @@ struct MetricEnumeration {
MetricsDiscovery::IAdapter_1_9 *pAdapter = nullptr;
MetricsDiscovery::IMetricsDevice_1_5 *pMetricsDevice = nullptr;
uint32_t maximumOaBufferSize = 0u;
MetricsDiscovery::IInformationLatest *pOaBufferOverflowInformation = nullptr;
public:
// Metrics Discovery version should be at least 1.5.

View File

@@ -86,7 +86,7 @@ ze_result_t OaMetricStreamerImp::readData(uint32_t maxReportCount, size_t *pRawD
// Read streamer data.
result = metricGroup->readIoStream(reportCount, *pRawData);
if (result == ZE_RESULT_SUCCESS || result == ZE_RESULT_WARNING_DROPPED_DATA) {
if (result == ZE_RESULT_SUCCESS) {
*pRawDataSize = reportCount * rawReportSize;
}
}