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>
This commit is contained in:
@@ -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++)
|
||||
|
||||
Reference in New Issue
Block a user