SWDEV-485763 - Fix memory leaks in various unit tests
Fix memory leaks by adding missing destroy calls for events, streams, and graphs at the end of tests. Ensure that every test case executes destroy calls, regardless of whether it passes or fails. Change-Id: I814e35c528d90ed2abb34d77377f1a7fd3f1f11c
This commit is contained in:
@@ -488,12 +488,16 @@ bool validateStreamPrioritiesWithEvents() {
|
||||
OP(low, high)
|
||||
#undef OP
|
||||
|
||||
// free host & device memory
|
||||
// free host & device memory & events
|
||||
#define OP(x) \
|
||||
free(src_h_##x); \
|
||||
free(dst_h_##x); \
|
||||
HIP_CHECK(hipFree(src_d_##x)); \
|
||||
HIP_CHECK(hipFree(dst_d_##x));
|
||||
HIP_CHECK(hipFree(dst_d_##x)); \
|
||||
if (enable_priority_##x) { \
|
||||
HIP_CHECK(hipEventDestroy(event_start_##x)); \
|
||||
HIP_CHECK(hipEventDestroy(event_end_##x)); \
|
||||
}
|
||||
OP(low)
|
||||
OP(normal)
|
||||
OP(high)
|
||||
@@ -801,6 +805,33 @@ void TestForMultipleStreamWithPriority(void) {
|
||||
REQUIRE(memcmp(dst_h_high[i], src_h_high[i], size) == 0);
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 0; i < LOW_PRIORITY_STREAMCOUNT; i++) {
|
||||
if (enable_priority_low) {
|
||||
HIP_CHECK(hipEventDestroy(event_start_low[i]));
|
||||
HIP_CHECK(hipEventDestroy(event_end_low[i]));
|
||||
}
|
||||
|
||||
HIP_CHECK(hipStreamDestroy(stream_low[i]));
|
||||
}
|
||||
|
||||
for (int i = 0; i < NORMAL_PRIORITY_STREAMCOUNT; i++) {
|
||||
if (enable_priority_normal) {
|
||||
HIP_CHECK(hipEventDestroy(event_start_normal[i]));
|
||||
HIP_CHECK(hipEventDestroy(event_end_normal[i]));
|
||||
}
|
||||
|
||||
HIP_CHECK(hipStreamDestroy(stream_normal[i]));
|
||||
}
|
||||
|
||||
for (int i = 0; i < HIGH_PRIORITY_STREAMCOUNT; i++) {
|
||||
if (enable_priority_high) {
|
||||
HIP_CHECK(hipEventDestroy(event_start_high[i]));
|
||||
HIP_CHECK(hipEventDestroy(event_end_high[i]));
|
||||
}
|
||||
|
||||
HIP_CHECK(hipStreamDestroy(stream_high[i]));
|
||||
}
|
||||
}
|
||||
} // namespace hipStreamCreateWithPriorityTest
|
||||
|
||||
|
||||
@@ -140,6 +140,7 @@ static bool validateStreamGetDevice() {
|
||||
hipStream_t stream;
|
||||
HIP_CHECK(hipStreamCreate(&stream));
|
||||
HIP_CHECK(hipStreamGetDevice(stream, &device_from_stream));
|
||||
HIP_CHECK(hipStreamDestroy(stream));
|
||||
|
||||
REQUIRE(device_from_stream == gpu);
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user