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
Este commit está contenido en:
@@ -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
|
||||
|
||||
|
||||
Referencia en una nueva incidencia
Block a user