Miscompiled control flow

Miscompiled control flow

Hi there,

I've attached a test case (a gutted version of a segmented scan) that gets miscompiled by intel_sdk_for_ocl_applications_2013_xe_runtime_3.0.67279_x64, at least when running on my i7-2620M.

Specifically, when running this self-contained test code using PyOpenCL, I get the line

gid:0 fsii:0

printed 16 times for each of the two work groups. If you look at the kernel, that means that the printf() in the trailing snippet:

    if (get_local_id(0) == 0)
    {  
      printf("gid:%d fsii:%d\n", psc_GID_0, psc_first_segment_start_in_interval);
    }

got executed 16 times for group id 0. In my book, it should be executed exactly once. (Confirmed by running against other implementations. Intel OpenCL 2012 also gets this right.)

Thanks,

Andreas

AnhangGröße
Herunterladen l1-scan.py.txt38.73 KB
5 Beiträge / 0 neu
Letzter Beitrag
Nähere Informationen zur Compiler-Optimierung finden Sie in unserem Optimierungshinweis.

Sorry for late response. Thanks for the code. We'll take a look and get back to you.

Hi Andreas,

I was able to reproduce the issue on the release version (67279), but I don't see it on our latest development versions, the output I get is:
gid:0 fsii:0
gid:1 fsii:0

So obviously it has been fixed since that.

Thanks,
Yuri

Sounds good, thanks for the heads-up. How soon do you think your dev version will turn into a release?

Thanks, Andreas

Hi, the control flow you have established on the estructure

JudLup Luna

Kommentar hinterlassen

Bitte anmelden, um einen Kommentar hinzuzufügen. Sie sind noch nicht Mitglied? Jetzt teilnehmen