P4 to Git Change 1576208 by vsytchen@vsytchen-win10 on 2018/07/04 15:36:47
SWDEV-154903 - [Vega10][PAL] clSVMAlloc is failing to create allocations greater than 2GB 1. Uncommit coarse grain SVM from system memory when calling clEnqueueSVMUnmap ReviewBoardURL = http://ocltc.amd.com/reviews/r/15336/diff/ Affected files ... ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpumemory.cpp#133 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palmemory.cpp#22 edit ... //depot/stg/opencl/drivers/opencl/runtime/platform/memory.cpp#133 edit ... //depot/stg/opencl/drivers/opencl/runtime/platform/memory.hpp#106 edit
This commit is contained in:
@@ -431,6 +431,14 @@ void Memory::commitSvmMemory() {
|
||||
}
|
||||
}
|
||||
|
||||
void Memory::uncommitSvmMemory() {
|
||||
ScopedLock lock(lockMemoryOps_);
|
||||
if (svmPtrCommited_ && !(flags_ & CL_MEM_SVM_FINE_GRAIN_BUFFER)) {
|
||||
amd::Os::uncommitMemory(svmHostAddress_, size_);
|
||||
svmPtrCommited_ = false;
|
||||
}
|
||||
}
|
||||
|
||||
void Buffer::initDeviceMemory() {
|
||||
deviceMemories_ = reinterpret_cast<DeviceMemory*>(reinterpret_cast<char*>(this) + sizeof(Buffer));
|
||||
memset(deviceMemories_, 0, context_().devices().size() * sizeof(DeviceMemory));
|
||||
|
||||
Reference in New Issue
Block a user