SWDEV-554608 - Add hipHostRegisterIoMemory for hipHostRegister (#962)
* SWDEV-554608 - Add hipHostRegisterIoMemory for hipHostRegister * SWDEV-554608 - Add hipHostRegisterIoMemory for hipHostRegister * SWDEV-554174 Added hipHostRegisterIoMemory flag in test cases * SWDEV-554174 : Did formatting corrections * SWDEV-554608 - set HSA_AMD_MEMORY_POOL_UNCACHED_FLAG if IoMemory is set * SWDEV-554608 - set HSA_AMD_MEMORY_POOL_UNCACHED_FLAG if IoMemory is set * SWDEV-554608 - Add hipHostRegisterIoMemory for hipHostRegister --------- Co-authored-by: Anavena Venkatesh <Anavena.Venkatesh@amd.com> Co-authored-by: Rambabu Swargam <rambabu.swargam@amd.com>
This commit is contained in:
@@ -178,6 +178,16 @@ TEST_CASE("Unit_hipFreeNegativeHost") {
|
||||
HIP_CHECK_ERROR(hipHostFree(hostPtr), hipErrorInvalidValue);
|
||||
delete hostPtr;
|
||||
}
|
||||
#if (HT_AMD == 1) && (HT_LINUX == 1)
|
||||
SECTION("hipHostRegister AMD LINUX") {
|
||||
char* hostPtr = new char;
|
||||
auto flag = GENERATE(hipHostRegisterDefault, hipHostRegisterPortable, hipHostRegisterMapped,
|
||||
hipHostRegisterIoMemory);
|
||||
HIP_CHECK(hipHostRegister((void*)hostPtr, sizeof(char), flag));
|
||||
HIP_CHECK_ERROR(hipHostFree(hostPtr), hipErrorInvalidValue);
|
||||
delete hostPtr;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
#if HT_NVIDIA
|
||||
|
||||
@@ -49,6 +49,16 @@ TEST_CASE("Unit_hipFreeHost_InvalidMemory") {
|
||||
HIP_CHECK(hipHostRegister(ptr, sizeof(char), flag));
|
||||
HIP_CHECK_ERROR(hipFreeHost(ptr), hipErrorInvalidValue);
|
||||
}
|
||||
|
||||
#if (HT_AMD == 1) && (HT_LINUX == 1)
|
||||
SECTION("Host registered memory AMD Linux") {
|
||||
char* ptr = new char;
|
||||
auto flag = GENERATE(hipHostRegisterDefault, hipHostRegisterPortable, hipHostRegisterMapped,
|
||||
hipHostRegisterIoMemory);
|
||||
HIP_CHECK(hipHostRegister(ptr, sizeof(char), flag));
|
||||
HIP_CHECK_ERROR(hipFreeHost(ptr), hipErrorInvalidValue);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -49,6 +49,17 @@ TEST_CASE("Unit_hipHostFree_InvalidMemory") {
|
||||
HIP_CHECK(hipHostRegister(ptr, ptr_size, flag));
|
||||
HIP_CHECK_ERROR(hipHostFree(ptr), hipErrorInvalidValue);
|
||||
}
|
||||
|
||||
#if (HT_AMD == 1) && (HT_LINUX == 1)
|
||||
SECTION("Host registered memory AMD Linux") {
|
||||
const size_t ptr_size = 1024;
|
||||
char* ptr = new char[ptr_size];
|
||||
auto flag = GENERATE(hipHostRegisterDefault, hipHostRegisterPortable, hipHostRegisterMapped,
|
||||
hipHostRegisterIoMemory);
|
||||
HIP_CHECK(hipHostRegister(ptr, ptr_size, flag));
|
||||
HIP_CHECK_ERROR(hipHostFree(ptr), hipErrorInvalidValue);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -122,10 +122,12 @@ TEMPLATE_TEST_CASE("Unit_hipHostRegister_ReferenceFromKernelandhipMemset", "", i
|
||||
SECTION("hipExtHostRegisterUncached") {
|
||||
HIP_CHECK(hipHostRegister(A, sizeBytes, hipExtHostRegisterUncached));
|
||||
}
|
||||
SECTION("hipHostRegisterPortable | hipHostRegisterMapped | hipExtHostRegisterUncached") {
|
||||
SECTION("hipHostRegisterPortable | hipHostRegisterMapped | "
|
||||
"hipExtHostRegisterUncached | hipHostRegisterIoMemory") {
|
||||
HIP_CHECK(hipHostRegister(
|
||||
A, sizeBytes,
|
||||
hipHostRegisterPortable | hipHostRegisterMapped | hipExtHostRegisterUncached));
|
||||
hipHostRegisterPortable | hipHostRegisterMapped | hipExtHostRegisterUncached |
|
||||
hipHostRegisterIoMemory));
|
||||
}
|
||||
}
|
||||
#endif
|
||||
@@ -925,6 +927,7 @@ TEMPLATE_TEST_CASE("Unit_hipHostRegister_Flags", "", int, float, double) {
|
||||
FlagType{0x08, true}, FlagType{hipHostRegisterPortable | hipHostRegisterMapped, true},
|
||||
FlagType{hipHostRegisterPortable | hipHostRegisterMapped | 0x08, true},
|
||||
#if (HT_AMD == 1) && (HT_LINUX == 1)
|
||||
FlagType{hipHostRegisterIoMemory, true},
|
||||
FlagType{hipExtHostRegisterUncached, true},
|
||||
FlagType{hipHostRegisterPortable | hipHostRegisterMapped | hipExtHostRegisterUncached, true},
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user