kfdtest: query userptr pointer alloc flags

Test if query userptr pointer info return correct alloc flags,
CoarseGrain by default.

Test if query hsaKmtAllocMemory pointer info return correct alloc
CoarseGrain flags.



Change-Id: If3a1175645717e5d7c475d6ff35b02d6876a1f7c
Signed-off-by: Philip Yang <Philip.Yang@amd.com>


[ROCm/ROCR-Runtime commit: c3c1618db7]
Этот коммит содержится в:
Philip Yang
2021-07-21 17:16:01 -04:00
родитель f11efa6ee2
Коммит 7100af1b99
+3
Просмотреть файл
@@ -1389,6 +1389,7 @@ TEST_F(KFDMemoryTest, QueryPointerInfo) {
EXPECT_EQ(ptrInfo.CPUAddress, hostBuffer.As<void*>());
EXPECT_EQ(ptrInfo.GPUAddress, (HSAuint64)hostBuffer.As<void*>());
EXPECT_EQ(ptrInfo.SizeInBytes, (HSAuint64)hostBuffer.Size());
EXPECT_EQ(ptrInfo.MemFlags.ui32.CoarseGrain, 0);
if (is_dgpu()) {
EXPECT_EQ((HSAuint64)ptrInfo.NMappedNodes, nGPU);
// Check NMappedNodes again after unmapping the memory
@@ -1407,6 +1408,7 @@ TEST_F(KFDMemoryTest, QueryPointerInfo) {
EXPECT_EQ(ptrInfo.CPUAddress, localBuffer.As<void*>());
EXPECT_EQ(ptrInfo.GPUAddress, (HSAuint64)localBuffer.As<void*>());
EXPECT_EQ(ptrInfo.SizeInBytes, (HSAuint64)localBuffer.Size());
EXPECT_EQ(ptrInfo.MemFlags.ui32.CoarseGrain, 1);
HSAuint32 *addr = localBuffer.As<HSAuint32 *>() + 4;
EXPECT_SUCCESS(hsaKmtQueryPointerInfo(reinterpret_cast<void *>(addr), &ptrInfo));
@@ -1425,6 +1427,7 @@ TEST_F(KFDMemoryTest, QueryPointerInfo) {
EXPECT_EQ(ptrInfo.SizeInBytes, sizeof(HSAuint32)*2);
EXPECT_EQ(ptrInfo.NRegisteredNodes, 0);
EXPECT_EQ(ptrInfo.NMappedNodes, nGPU);
EXPECT_EQ(ptrInfo.MemFlags.ui32.CoarseGrain, 1);
// Register to nodes
HSAuint32 nodes[nGPU];
for (unsigned int i = 0; i < nGPU; i++)