Ulrich, I made a test removing each module step by step and it's the resize module. I did not rotate or anything, just crop. I now remember that I've seen this exact behavior in the past but didn't really linked this to OpenCL.

That's a little bit surprising. I would have expected non-local means to be the cause as there were some recent changes, which might have introduced the difference between cpu and gpu. I still would not exclude this as the root cause; maybe you just trigger the effect by different levels of scaling when you crop&rotate.

Anyhow, could you please upload the incumbant CR2 file plus the XMP, so I can try to reproduce?

I checked with your raw file + xmp file. On my system with current git master there is no visible difference between cpu and opencl path (see file attached). As previously said, I think there is a small issue with module nlmeans but that's hardly visible.

Could you please check if running DT with '-d opencl' indicates any problems on your side?

OK, now I am able to reproduce the problem. It occurs when demosaic is done by OpenCL kernel clip_and_zoom_demosaic_half_size, which is the case at certain medium zoom levels. This also explains why file export is not affected.

Target version changed from Candidate for next minor release to Future

A short update on the topic.

OpenCL demosaic uses different algorithms than cpu demosaic in some parts. One consequence is the described difference in noise levels. However, this can not be fixed easily. An easy fix of the current OpenCL implementation could produce a better noise level but only at the cost of a reduced sharpness impression. This would be a bad deal, as sharpness is a more important dimension for first inspection of image quality at low resolution than noise level.

A final solution will need to tackle several of our OpenCL demosaic kernels with the goal to have them deliver 1:1 the same results as cpu demosaic.