P4 to Git Change 1095130 by xcui@merged_opencl_jxcwin on 2014/11/07 18:09:55
EPR #408459 - changed the implementation of svmAlloc, so that the first device can create amd::Memory object, and the rest of devices only added gpu memory to it. This is part of changes for mgpu support for svmalloc code review: http://ocltc.amd.com/reviews/r/6245/ precheckin testing results: http://ocltc.amd.com:8111/viewModification.html?modId=43136&personal=true&buildTypeId=&tab=vcsModificationTests Affected files ... ... //depot/stg/opencl/drivers/opencl/runtime/device/cpu/cpudevice.hpp#88 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#233 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.cpp#479 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.hpp#133 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/hsa/hsadevice.cpp#87 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/hsa/hsadevice.hpp#44 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/hsa_foundation/hsadevice.cpp#19 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/hsa_foundation/hsadevice.hpp#6 edit ... //depot/stg/opencl/drivers/opencl/runtime/platform/context.cpp#34 edit
This commit is contained in:
@@ -307,11 +307,8 @@ Context::svmAlloc(size_t size, size_t alignment, cl_svm_mem_flags flags)
|
||||
|
||||
for (const auto& dev : svmAllocDevice_) {
|
||||
if (dev->type() == CL_DEVICE_TYPE_GPU) {
|
||||
tempPtr = dev->svmAlloc(*this, size, alignment, flags);
|
||||
if (dev == svmAllocDevice_.front()) {
|
||||
svmPtrAlloced = tempPtr;
|
||||
}
|
||||
if ((svmPtrAlloced != tempPtr) || (NULL == tempPtr)) {
|
||||
svmPtrAlloced = dev->svmAlloc(*this, size, alignment, flags, svmPtrAlloced);
|
||||
if (svmPtrAlloced == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user