diff options
author | Sayak Biswas <sayakAMD> | 2021-10-20 14:37:39 +0300 |
---|---|---|
committer | William Leeson <william@blender.org> | 2021-10-20 15:04:28 +0300 |
commit | ba4e227def13b4b953775ff4a2fd9c154bb07751 (patch) | |
tree | 2ebf929123c0e1cec40fda60c4e8b86f1c38a28c /extern | |
parent | d28aaf6139c8cfa8555542f4f228f390485dd7ed (diff) |
HIP device code cleanup and fix for high VRAM usage
This patch cleans up code for HIP device and makes it more consistent with the CUDA code.
It also fixes the issue with high VRAM usage on AMD cards using HIP allowing better performance and usage on cards like 6600XT.
Added a check in intern/cycles/kernel/bvh/bvh_util.h to prevent compiler error with hipcc
Reviewed By: brecht, leesonw
Maniphest Tasks: T92124
Differential Revision: https://developer.blender.org/D12834
Diffstat (limited to 'extern')
-rw-r--r-- | extern/hipew/include/hipew.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/extern/hipew/include/hipew.h b/extern/hipew/include/hipew.h index 02fffc331bf..aa42fdf8ecd 100644 --- a/extern/hipew/include/hipew.h +++ b/extern/hipew/include/hipew.h @@ -24,9 +24,13 @@ extern "C" { #include <stdlib.h> #define HIP_IPC_HANDLE_SIZE 64 +#define hipHostMallocDefault 0x00 #define hipHostMallocPortable 0x01 #define hipHostMallocMapped 0x02 #define hipHostMallocWriteCombined 0x04 +#define hipHostMallocNumaUser 0x20000000 +#define hipHostMallocCoherent 0x40000000 +#define hipHostMallocNonCoherent 0x80000000 #define hipHostRegisterPortable 0x01 #define hipHostRegisterMapped 0x02 #define hipHostRegisterIoMemory 0x04 @@ -989,7 +993,7 @@ typedef hipError_t HIPAPI thipMalloc(hipDeviceptr_t* dptr, size_t bytesize); typedef hipError_t HIPAPI thipMemAllocPitch(hipDeviceptr_t* dptr, size_t* pPitch, size_t WidthInBytes, size_t Height, unsigned int ElementSizeBytes); typedef hipError_t HIPAPI thipFree(hipDeviceptr_t dptr); typedef hipError_t HIPAPI thipMemGetAddressRange(hipDeviceptr_t* pbase, size_t* psize, hipDeviceptr_t dptr); -typedef hipError_t HIPAPI thipHostMalloc(void** pp, size_t bytesize); +typedef hipError_t HIPAPI thipHostMalloc(void** pp, size_t bytesize, unsigned int flags); typedef hipError_t HIPAPI thipHostFree(void* p); typedef hipError_t HIPAPI thipMemHostAlloc(void** pp, size_t bytesize, unsigned int Flags); typedef hipError_t HIPAPI thipHostGetDevicePointer(hipDeviceptr_t* pdptr, void* p, unsigned int Flags); |