3 Replies Latest reply on Apr 15, 2016 6:32 AM by dipak

    Problem with AMD APP SDK v3.0.130.136

    haahh

      With new version of AMD APP SDK v3.0 (v3.0.130.136) a bug was introduced (everything was OK in v3.0.130.135).

       

      Library libamdocl12cl64.so is not in /lib/x86_64/sdk but in /lib/x86_64/ which results in failure when compiling

      OpenCL program that uses Static C++ Kernel Language (you can see the bugs here). Compilation works when

      libamdocl12cl64.so is copied to /lib/x86_64/sdk.

       

      AMD APP SDK is installed using command sh AMD-APP-SDK*.sh --tar -xf -C <amd_app_sdk_location>.

       

      I have to mention that I would be great if you provide simple links to your AMD APP SDK because there are

      open-source OpenCL libraries that use Travis-CI with your SDK and now to download it scripts like this one are required.

        • Re: Problem with AMD APP SDK v3.0.130.136
          dipak

          Hi,

          Are you getting compilation error for any type of kernel code or only for kernels having Static C++ code?

          In this built report here , I can see error lines as below:  

          --- build log ---
          error: unknown argument: '--c++'
          /tmp/OCL74696T1.cl:1:1: error: unknown type name 'template'
          

           

          Did you try build option "-x clc++" to compile the C++ kernel? Because as per the AMD programming guide:

          -x clc++ is required if the input language is static C++. -x clc++ may not be used with -cl-std=CL2.0 and may only be used with -cl-std=CL1.2 if -cl-std=CLX.Y is used.

           

          Regards,

            • Re: Problem with AMD APP SDK v3.0.130.136
              haahh

              It's compiled with build option "-x clc++" (source code). This is OpenCL program build log. Boost.Compute prints it whenever error occurs during a kernel compilation. I believe that at some point in OpenCL compiler "-x clc++"  was changed into '--c++'. Copying libamdocl12cl64.so into /lib/x86_64/sdk or using v3.0.130.135 help.

               

              I'm getting compilation error only with kernels having Static C++ code (other tests do not fail and all of them use OpenCL).

               

              I should also add that before v3.0.130.136 setting

               

              LD_LIBRARY_PATH = ${AMDAPPSDKROOT}/lib/x86_64/:$LD_LIBRARY_PATH}
              

               

              worked for both AMD APP SDK v3.0 and v2.9.1, now for v3.0.130.136 I have to set it to (/sdk is added to the path)

               

              LD_LIBRARY_PATH = ${AMDAPPSDKROOT}/lib/x86_64/sdk:${LD_LIBRARY_PATH}
              

               

              Otherwise I get "error while loading shared libraries: libOpenCL.so.1: cannot open shared object file: No such file or directory" error (even for clinfo).

                • Re: Problem with AMD APP SDK v3.0.130.136
                  dipak

                  Hi Jakub,

                  I tried both - root as well as non-root installation of the latest AMD APP SDK v3.0 (v3.0.130.136) [as described in the "Installation Notes"] and both the cases the kernel (source code) compiled fine. Could you please try to install the APP SDK as described in the "Installation Notes" and share your observations?

                  BTW, just wanted to know whether you have any Catalyst driver installed or not? If so, which one?

                   

                  Regards,