P4 to Git Change 1127860 by xcui@merged_opencl_jxcwin on 2015/03/05 12:15:14

EPR #414789 - fixed the failure of svm atomics failure with mulitple device support. The failure was caused by the svm allocation for the devices which don't support platform stomics svm.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/platform/context.cpp#35 edit
This commit is contained in:
foreman
2015-03-05 13:21:33 -05:00
parent 6c6105c698
commit 13e7ed43f0
+5
View File
@@ -307,6 +307,11 @@ 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) {
//check if the device support svm platform atomics,
//skipped allocation for platform atomics if not supported by this device
if ((flags & CL_MEM_SVM_ATOMICS) && !(dev->info().svmCapabilities_ & CL_DEVICE_SVM_ATOMICS)) {
continue;
}
svmPtrAlloced = dev->svmAlloc(*this, size, alignment, flags, svmPtrAlloced);
if (svmPtrAlloced == NULL) {
return NULL;