4 Replies Latest reply on Sep 26, 2011 1:18 PM by MicahVillmow

    Crash in CL compiler

    arsenm

      I ran into a problem with the compiler crashing. I'm using Linux x86_64 with a Radeon 6970, SDK 2.5 and Catalyst 11.7.

      I sort of reduced it from what I was working on. It seems to happen with the sqrt inside the if inside the loop. It seems to only happen with sqrt(). If it isn't there (or another math function is used in place) it doesn't crash.

      Test case

       

       

      #0 0x00007ffff5a74069 in ?? () from /opt/amdstream/lib/libamdocl64.so #1 0x00007ffff5a75c27 in ?? () from /opt/amdstream/lib/libamdocl64.so #2 0x00007ffff5a76641 in ?? () from /opt/amdstream/lib/libamdocl64.so #3 0x00007ffff5d56e5f in ?? () from /opt/amdstream/lib/libamdocl64.so #4 0x00007ffff61e8950 in ?? () from /opt/amdstream/lib/libamdocl64.so #5 0x00007ffff61e8a62 in ?? () from /opt/amdstream/lib/libamdocl64.so #6 0x00007ffff61e8bf9 in ?? () from /opt/amdstream/lib/libamdocl64.so #7 0x00007ffff55c656b in ?? () from /opt/amdstream/lib/libamdocl64.so #8 0x00007ffff55c8bc7 in ?? () from /opt/amdstream/lib/libamdocl64.so #9 0x00007ffff55e2f18 in ?? () from /opt/amdstream/lib/libamdocl64.so #10 0x00007ffff560339f in ?? () from /opt/amdstream/lib/libamdocl64.so #11 0x00007ffff55cd25d in ?? () from /opt/amdstream/lib/libamdocl64.so #12 0x00007ffff561f565 in ?? () from /opt/amdstream/lib/libamdocl64.so #13 0x00007ffff55c335d in clBuildProgram () from /opt/amdstream/lib/libamdocl64.so

        • Crash in CL compiler
          MicahVillmow
          arsenm,
          Thanks for reporting this. I'll look into it tomorrow when I have access to a linux machine.
          • Crash in CL compiler
            genaganna

             

            Originally posted by: arsenm I ran into a problem with the compiler crashing. I'm using Linux x86_64 with a Radeon 6970, SDK 2.5 and Catalyst 11.7.

            I sort of reduced it from what I was working on. It seems to happen with the sqrt inside the if inside the loop. It seems to only happen with sqrt(). If it isn't there (or another math function is used in place) it doesn't crash.

            Test case 

            Have you enabled following extension before your kernel code?

            #pragma OPENCL EXTENSION cl_khr_fp64 : enable

            • Crash in CL compiler
              arsenm

               

              I found another that looks sort of similar



              #pragma OPENCL EXTENSION cl_amd_fp64 : enable __kernel void testKernel(__global double* posX) { double px = posX[get_global_id(0)]; double4 pos = px; double r = sqrt(px); length(pos); } #0 0x00007ffff57ff069 in ?? () from /opt/amdstream/lib/libamdocl64.so #1 0x00007ffff5800c27 in ?? () from /opt/amdstream/lib/libamdocl64.so #2 0x00007ffff5801641 in ?? () from /opt/amdstream/lib/libamdocl64.so #3 0x00007ffff5ae1e5f in ?? () from /opt/amdstream/lib/libamdocl64.so #4 0x00007ffff5f73950 in ?? () from /opt/amdstream/lib/libamdocl64.so #5 0x00007ffff5f73a62 in ?? () from /opt/amdstream/lib/libamdocl64.so #6 0x00007ffff5f73bf9 in ?? () from /opt/amdstream/lib/libamdocl64.so #7 0x00007ffff535156b in ?? () from /opt/amdstream/lib/libamdocl64.so #8 0x00007ffff5353bc7 in ?? () from /opt/amdstream/lib/libamdocl64.so #9 0x00007ffff536df18 in ?? () from /opt/amdstream/lib/libamdocl64.so #10 0x00007ffff538e39f in ?? () from /opt/amdstream/lib/libamdocl64.so #11 0x00007ffff535825d in ?? () from /opt/amdstream/lib/libamdocl64.so #12 0x00007ffff53aa565 in ?? () from /opt/amdstream/lib/libamdocl64.so #13 0x00007ffff534e35d in clBuildProgram () from /opt/amdstream/lib/libamdocl64.so

              • Crash in CL compiler
                MicahVillmow
                This works fine with our internal builds, expect it to be fixed in an upcoming catalyst release.