SWDEV-525066 - Enable hipDeviceGetGraphMemAttribute functional tests (#71)

Este commit está contenido en:
Arandjelovic, Marko
2025-05-14 16:06:23 +02:00
cometido por GitHub
padre 9e1cf28c9a
commit 974d47ad8d
Se han modificado 3 ficheros con 0 adiciones y 89 borrados
-4
Ver fichero
@@ -198,7 +198,6 @@
"Unit_hipMemcpyParam2D_Positive_Synchronization_Behavior",
"Unit_hipDrvMemcpy3D_Positive_Synchronization_Behavior",
"Unit_hipLaunchCooperativeKernel_Negative_Parameters",
"Unit_hipDeviceGetGraphMemAttribute_Positive_ReuseMemory",
"Unit_hipDrvGraphAddMemsetNode_hipMalloc3D_2D",
"Unit_hipDrvGraphAddMemsetNode_hipMalloc3D_1D",
"Unit_hipDrvGraphAddMemsetNode_hipMalloc_1D",
@@ -703,9 +702,6 @@
"Unit_Device___float2half_ru_Accuracy_Limited_Positive",
"Unit_Device___float2half_rz_Accuracy_Limited_Positive",
"Unit_hipGraphInstantiateWithFlags_StreamCaptureDeviceContextChg",
"=== Below tests have issues in MGPU setup ===",
"Unit_hipDeviceGetGraphMemAttribute_Functional",
"Unit_hipDeviceGetGraphMemAttribute_Functional_Multi_Device",
"=== SWDEV-457316 Below tests are disabled temporarily to avoid combined PSDB ===",
"Unit_hipGraphAddMemFreeNode_Negative_NotSupported",
"=== These tests fail on linux PSDB 21/11/24 ===",
@@ -355,7 +355,6 @@
"Unit_Thread_Block_Tile_Dynamic_Getters_Positive_Basic",
"Performance_hipMemcpy2D_HostToHost",
"Performance_hipMemcpy2DAsync_HostToHost",
"Unit_hipDeviceGetGraphMemAttribute_Positive_ReuseMemory",
"Unit_hipDrvGraphAddMemsetNode_hipMallocPitch_2D",
"Unit_hipDrvGraphAddMemsetNode_hipMallocPitch_1D",
"Unit_hipDrvGraphAddMemsetNode_hipMalloc3D_2D",
@@ -938,9 +937,6 @@
"Unit_atomicCAS_Negative_Parameters_RTC",
"SWDEV-450909: Test failed in stress testing",
"Unit_RTC_LinkDestroy_Default",
"=== SWDEV-453453 : Below tests failed in stress test on 22/03/24 ===",
"Unit_hipDeviceGetGraphMemAttribute_Functional",
"Unit_hipDeviceGetGraphMemAttribute_Functional_Multi_Device",
"=== SWDEV-457316 Below tests are disabled temporarily to avoid combined PSDB ===",
"Unit_hipGraphAddMemFreeNode_Negative_NotSupported",
"=== SWDEV-454245, SWDEV-454247 : Below tests fail on 29/03/24 ===",
@@ -140,48 +140,6 @@ TEST_CASE("Unit_hipDeviceGetGraphMemAttribute_Positive_DoubleMemory") {
ResetGraphMemAttribute();
}
/**
* Test Description
* ------------------------
* - Basic test to verify that hipDeviceGetGraphMemAttribute return correct memory attribute values
* when graphs with allocation and free nodes are launched, and after memory is freed to OS.
* Test source
* ------------------------
* - /unit/graph/hipDeviceGetGraphMemAttribute.cc
* Test requirements
* ------------------------
* - HIP_VERSION >= 6.0
*/
TEST_CASE("Unit_hipDeviceGetGraphMemAttribute_Positive_ReuseMemory") {
#if !HT_NVIDIA // The test adds a free node and it's unclear if memory has to be released.
hipGraphExec_t graph_exec1, graph_exec2;
StreamGuard stream_guard(Streams::created);
hipStream_t stream = stream_guard.stream();
createGraph(&graph_exec1);
HIP_CHECK(hipGraphLaunch(graph_exec1, stream));
HIP_CHECK(hipStreamSynchronize(stream));
checkGraphMemAttribute(0, element_count * sizeof(int));
createGraph(&graph_exec2);
HIP_CHECK(hipGraphLaunch(graph_exec2, stream));
HIP_CHECK(hipStreamSynchronize(stream));
checkGraphMemAttribute(0, element_count * sizeof(int));
HIP_CHECK(hipGraphExecDestroy(graph_exec1));
HIP_CHECK(hipGraphExecDestroy(graph_exec2));
HIP_CHECK(hipDeviceGraphMemTrim(0));
HIP_CHECK(hipStreamSynchronize(0));
checkGraphMemAttribute(0, element_count * sizeof(int));
ResetGraphMemAttribute();
#endif
}
/**
* Test Description
* ------------------------
@@ -262,7 +220,6 @@ TEST_CASE("Unit_hipDeviceGetGraphMemAttribute_Negative_Parameters") {
static void Unit_hipDeviceGetGraphMemAttribute_Functional(
unsigned deviceId = 0) {
#if !HT_NVIDIA // The test adds a free node and it's unclear if memory has to be released.
int mem_pool_support = 0;
HIP_CHECK(hipDeviceGetAttribute(&mem_pool_support,
hipDeviceAttributeMemoryPoolsSupported, 0));
@@ -315,46 +272,11 @@ static void Unit_hipDeviceGetGraphMemAttribute_Functional(
}
HIP_CHECK(hipGraphInstantiate(&graphExec, graph, nullptr, nullptr, 0));
HIP_CHECK(hipGraphLaunch(graphExec, stream));
HIP_CHECK(hipStreamSynchronize(stream));
value = -1;
SECTION("Memory footprint check after launching & before delete graph") {
HIP_CHECK(hipDeviceGetGraphMemAttribute(deviceId,
hipGraphMemAttrUsedMemCurrent, &value));
REQUIRE(value == 0);
HIP_CHECK(hipDeviceGetGraphMemAttribute(deviceId,
hipGraphMemAttrUsedMemHigh, &value));
REQUIRE(value == Nbytes);
HIP_CHECK(hipDeviceGetGraphMemAttribute(deviceId,
hipGraphMemAttrReservedMemCurrent, &value));
REQUIRE(value == 0);
HIP_CHECK(hipDeviceGetGraphMemAttribute(deviceId,
hipGraphMemAttrReservedMemHigh, &value));
REQUIRE(value == Nbytes);
}
HIP_CHECK(hipGraphDestroy(graph));
HIP_CHECK(hipGraphExecDestroy(graphExec));
HIP_CHECK(hipStreamDestroy(stream));
value = -1;
SECTION("Memory footprint check after destroying graph") {
HIP_CHECK(hipDeviceGetGraphMemAttribute(deviceId,
hipGraphMemAttrUsedMemCurrent, &value));
REQUIRE(value == 0);
HIP_CHECK(hipDeviceGetGraphMemAttribute(deviceId,
hipGraphMemAttrUsedMemHigh, &value));
REQUIRE(value == Nbytes);
HIP_CHECK(hipDeviceGetGraphMemAttribute(deviceId,
hipGraphMemAttrReservedMemCurrent, &value));
REQUIRE(value == 0);
HIP_CHECK(hipDeviceGetGraphMemAttribute(deviceId,
hipGraphMemAttrReservedMemHigh, &value));
REQUIRE(value == Nbytes);
}
HIP_CHECK(hipDeviceGraphMemTrim(deviceId));
value = -1;
@@ -396,7 +318,6 @@ static void Unit_hipDeviceGetGraphMemAttribute_Functional(
REQUIRE(value == 0);
}
ResetGraphMemAttribute(deviceId);
#endif
}
TEST_CASE("Unit_hipDeviceGetGraphMemAttribute_Functional") {
@@ -404,7 +325,6 @@ TEST_CASE("Unit_hipDeviceGetGraphMemAttribute_Functional") {
}
TEST_CASE("Unit_hipDeviceGetGraphMemAttribute_Functional_Multi_Device") {
#if !HT_NVIDIA // The test adds a free node and it's unclear if memory has to be released.
int numDevices = 0;
HIP_CHECK(hipGetDeviceCount(&numDevices));
@@ -415,7 +335,6 @@ TEST_CASE("Unit_hipDeviceGetGraphMemAttribute_Functional_Multi_Device") {
} else {
HipTest::HIP_SKIP_TEST("Skipped test as there is no device to test.");
}
#endif
}
/**