P4 to Git Change 1591041 by vsytchen@vsytchen-win10 on 2018/08/08 18:46:17
SWDEV-159881 - [OCL][ROCm] Add SVM coarse-grain buffer support with device memory (Part 1)
1. Implement submitSvmFree/Copy/FillMemory.
2. Add macro IS_HIP that determines if the client is HIP.
3. Add setting enableCoarseGrainSVM that allows the use of device memory for coarse grain SVM allocations.
4. Set enableCoarseGrainSVM to be true only for HIP.
ReviewBoardURL = http://ocltc.amd.com/reviews/r/15597/diff/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#93 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocmemory.cpp#37 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocsettings.cpp#35 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocsettings.hpp#15 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#61 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.hpp#18 edit
... //depot/stg/opencl/drivers/opencl/runtime/utils/flags.hpp#294 edit
... //depot/stg/opencl/drivers/opencl/runtime/utils/macros.hpp#10 edit
[ROCm/clr commit: b33c52ed6f]
This commit is contained in:
@@ -145,6 +145,8 @@ release(uint, HSA_SIGNAL_POOL_SIZE, 16, \
|
||||
"Signal object pool size") \
|
||||
release(bool, HSA_ENABLE_ATOMICS_32B, false, \
|
||||
"1 = Enable SVM atomics in 32 bits (HSA backend-only). Any other value keeps then disabled.") \
|
||||
release(bool, HSA_ENABLE_COARSE_GRAIN_SVM, IS_HIP, \
|
||||
"Enable device memory for coarse grain SVM allocations") \
|
||||
release(bool, GPU_IFH_MODE, false, \
|
||||
"1 = Enable GPU IFH (infinitely fast hardware) mode. Any other value keeps setting disabled.") \
|
||||
release(bool, GPU_MIPMAP, true, \
|
||||
|
||||
@@ -107,6 +107,10 @@
|
||||
#define NOT_LIGHTNING(x) x
|
||||
#endif /* !WITH_LIGHTNING_COMPILER */
|
||||
|
||||
#ifdef BUILD_HIP
|
||||
#define IS_HIP true
|
||||
#endif
|
||||
|
||||
#ifndef IS_LINUX
|
||||
#define IS_LINUX false
|
||||
#endif
|
||||
@@ -119,6 +123,9 @@
|
||||
#ifndef IS_LIGHTNING
|
||||
#define IS_LIGHTNING false
|
||||
#endif
|
||||
#ifndef IS_HIP
|
||||
#define IS_HIP false
|
||||
#endif
|
||||
|
||||
#define IF_LEFT_true(x) x
|
||||
#define IF_LEFT_false(x)
|
||||
|
||||
Referens i nytt ärende
Block a user