From d686272a0997b7e2e2dbd5ee8e985ba517141536 Mon Sep 17 00:00:00 2001 From: dirk Date: Tue, 5 Jul 2016 21:22:15 +0200 Subject: [PATCH] Fixed rounding and added clFlush to keep Intel happy. --- MagickCore/accelerate.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/MagickCore/accelerate.c b/MagickCore/accelerate.c index fb6ddee32..35cc3938a 100644 --- a/MagickCore/accelerate.c +++ b/MagickCore/accelerate.c @@ -3216,7 +3216,7 @@ static Image *ComputeLocalContrastImage(const Image *image,MagickCLEnv clEnv, imageRows = (unsigned int) image->rows; iRadius = (cl_int) (image->rows > image->columns ? image->rows : image->columns) * 0.002f * fabs(radius); // Normalized radius, 100% gives blur radius of 20% of the largest dimension - passes = ((1.0f * imageColumns) * imageColumns * iRadius) / 4000000000.0f; + passes = (((1.0f * imageColumns) * imageColumns * iRadius) + 3999999999) / 4000000000.0f; passes = (passes < 1) ? 1: passes; /* set the kernel arguments */ @@ -3256,6 +3256,7 @@ static Image *ComputeLocalContrastImage(const Image *image,MagickCLEnv clEnv, (void) OpenCLThrowMagickException(device,exception, GetMagickModule(), ResourceLimitWarning, "clEnv->library->clEnqueueNDRangeKernel failed.", "."); goto cleanup; } + clEnv->library->clFlush(queue); RecordProfileData(device,blurRowKernel,event); } } @@ -3299,6 +3300,7 @@ static Image *ComputeLocalContrastImage(const Image *image,MagickCLEnv clEnv, (void) OpenCLThrowMagickException(device,exception, GetMagickModule(), ResourceLimitWarning, "clEnv->library->clEnqueueNDRangeKernel failed.", "."); goto cleanup; } + clEnv->library->clFlush(queue); RecordProfileData(device,blurColumnKernel,event); } } -- 2.40.0