OpenCL is disabled by default for NVIDIA devices due to a lot of reports about access violations.
diff --git a/MagickCore/opencl.c b/MagickCore/opencl.c
index 1e61864..c4cead5 100644
--- a/MagickCore/opencl.c
+++ b/MagickCore/opencl.c
@@ -2394,6 +2394,9 @@
MagickPrivate MagickBooleanType InitializeOpenCL(MagickCLEnv clEnv,
ExceptionInfo *exception)
{
+ register
+ size_t i;
+
LockSemaphoreInfo(clEnv->lock);
if (clEnv->initialized != MagickFalse)
{
@@ -2408,6 +2411,12 @@
AutoSelectOpenCLDevices(clEnv);
}
clEnv->initialized=MagickTrue;
+ /* NVIDIA is disabled by default due to reported access violation */
+ for (i=0; i < (ssize_t) clEnv->number_devices; i++)
+ {
+ if (strncmp(clEnv->devices[i]->platform_name,"NVIDIA",6) == 0)
+ clEnv->enabled=MagickFalse;
+ }
UnlockSemaphoreInfo(clEnv->lock);
return(HasOpenCLDevices(clEnv,exception));
}