From fe6105463534ef12fb2e9f26916cd4f106f65138 Mon Sep 17 00:00:00 2001
From: foreman
Date: Wed, 29 Oct 2014 17:16:07 -0400
Subject: [PATCH] P4 to Git Change 1092043 by xcui@merged_opencl_jxcwin on
2014/10/29 17:04:56
EPR #397491 - changed the CPU SVM capability availablility only for OpenCL 2.0, not for 1.2.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/cpu/cpudevice.cpp#267 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/cpu/cpusettings.cpp#28 edit
---
rocclr/runtime/device/cpu/cpudevice.cpp | 11 +++++++----
rocclr/runtime/device/cpu/cpusettings.cpp | 1 +
2 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/rocclr/runtime/device/cpu/cpudevice.cpp b/rocclr/runtime/device/cpu/cpudevice.cpp
index 5f20e24c2b..a305a9f961 100644
--- a/rocclr/runtime/device/cpu/cpudevice.cpp
+++ b/rocclr/runtime/device/cpu/cpudevice.cpp
@@ -265,10 +265,13 @@ Device::init()
info.linkerAvailable_ = CL_TRUE;
info.executionCapabilities_ = CL_EXEC_KERNEL | CL_EXEC_NATIVE_KERNEL;
- info.svmCapabilities_ = CL_DEVICE_SVM_COARSE_GRAIN_BUFFER |
- CL_DEVICE_SVM_FINE_GRAIN_BUFFER |
- CL_DEVICE_SVM_FINE_GRAIN_SYSTEM |
- CL_DEVICE_SVM_ATOMICS;
+ // Enable SVM only for OpenCL 2.0
+ if ((OPENCL_MAJOR >= 2) && (CPU_OPENCL_VERSION >= 200)) {
+ info.svmCapabilities_ = CL_DEVICE_SVM_COARSE_GRAIN_BUFFER |
+ CL_DEVICE_SVM_FINE_GRAIN_BUFFER |
+ CL_DEVICE_SVM_FINE_GRAIN_SYSTEM |
+ CL_DEVICE_SVM_ATOMICS;
+ }
info.preferredPlatformAtomicAlignment_ = 0;
info.preferredGlobalAtomicAlignment_ = 0;
info.preferredLocalAtomicAlignment_ = 0;
diff --git a/rocclr/runtime/device/cpu/cpusettings.cpp b/rocclr/runtime/device/cpu/cpusettings.cpp
index 2c407d1dad..e654d32b63 100644
--- a/rocclr/runtime/device/cpu/cpusettings.cpp
+++ b/rocclr/runtime/device/cpu/cpusettings.cpp
@@ -54,6 +54,7 @@ Settings::create()
enableExtension(ClKhrSubGroups);
supportDepthsRGB_ = true;
enableExtension(ClKhrDepthImages);
+ customSvmAllocator_ = true;
}
// Map CPUID feature bits to our own feature bits