Merge "Do not call releaseMemoryResource on ignored slot in NN VTS" into tm-dev am: cb2e758c92

Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/interfaces/+/17970068

Change-Id: I17ec249f93da7e499de8ca5e039314fbb650b8c3
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Michael Butler
2022-04-28 01:07:11 +00:00
committed by Automerger Merge Worker

View File

@@ -659,6 +659,7 @@ void EvaluatePreparedModel(const std::shared_ptr<IDevice>& device,
ASSERT_NE(nullptr, burst.get());
// associate a unique slot with each memory pool
constexpr int64_t kIgnoreSlot = -1;
int64_t currentSlot = 0;
std::vector<int64_t> slots;
slots.reserve(request.pools.size());
@@ -667,7 +668,7 @@ void EvaluatePreparedModel(const std::shared_ptr<IDevice>& device,
slots.push_back(currentSlot++);
} else {
EXPECT_EQ(pool.getTag(), RequestMemoryPool::Tag::token);
slots.push_back(-1);
slots.push_back(kIgnoreSlot);
}
}
@@ -698,8 +699,10 @@ void EvaluatePreparedModel(const std::shared_ptr<IDevice>& device,
// Mark each slot as unused after the execution. This is unnecessary because the
// burst is freed after this scope ends, but this is here to test the functionality.
for (int64_t slot : slots) {
ret = burst->releaseMemoryResource(slot);
ASSERT_TRUE(ret.isOk()) << ret.getDescription();
if (slot != kIgnoreSlot) {
ret = burst->releaseMemoryResource(slot);
ASSERT_TRUE(ret.isOk()) << ret.getDescription();
}
}
break;