7 Replies Latest reply on Aug 2, 2013 1:13 AM by himanshu.gautam

    Trinity and Richland: cl_khr_fp64 confusion again

    rahulgarg

      I think the situation about Trinity and Richland supporting cl_khr_fp64 remains unclear. On Trinity's GPU, the support for cl_khr_fp64 has certainly been there on at least some driver versions that I was aware of.

      However, the SDK 2.8 docs state that the Trinity's GPU does not support cl_khr_fp64.

      On Richland, the situation is again confusing. Take 8650G, the GPU side of some Richland-based mobile APUs. CLBenchmark site shows the OpenCL environment info here: CLBenchmark - OpenCL Compute Performance of AMD Radeon HD 8650G and cl_khr_fp64 is NOT listed in the available extensions.

       

      Clarity on this issue will be greatly appreciated.

        • Re: Trinity and Richland: cl_khr_fp64 confusion again
          himanshu.gautam

          Hi,

          Not sure how trustworthy your reference is. But isn't it simple to just run clinfo on your setup, and check what all extensions are supported ?

          IMHO cl_khr_fp64 is a extension that is mostly available for high-end products only. So not very sure, but i doubt if low-end trinity/richland iGPUs will support this extension. Their CPU parts should certainly support this extension though.

          I have 8650G in my reach. In case you still have problem, i can check the device and let you know the specifics.

          1 of 1 people found this helpful
            • Re: Trinity and Richland: cl_khr_fp64 confusion again
              rahulgarg

              Well the issue is I don't have a Trinity/Richland based product yet. I am trying to determine if it supports DP to decide whether I should buy it or not because I need DP support for my work

                • Re: Trinity and Richland: cl_khr_fp64 confusion again
                  matusi143

                  Rahulgarg, I am with you on this.  I have been looking for a new mobile development system and have been waiting to find out for sure if Richland will support double precision fp before I purchase anything.  The OpenCL info you referenced does show cl_amd_fp64 being supported and it makes me wonder if this is indeed a driver issue.  My understanding was that all APUs Trinity and later would support fp64 but at a much lower ratio in comparison to single precision (E.g. 1/12 instead of 1/4 of high end GPUs).  I guess I would look to someone at AMD to confirm this is the case and that it is just a driver issue not providing the OpenCL device info correctly.

              • Re: Trinity and Richland: cl_khr_fp64 confusion again
                himanshu.gautam

                Hi,

                http://www.khronos.org/registry/cl/extensions/amd/cl_amd_fp64.txt

                The Link above will help understand difference between cl_amd_fp64 and cl_khr_fp64

                 

                A small excerpt:

                Overview

                     This extension provides a subset of the functionality of that provided

                    by the cl_khr_fp64 extension.  When enabled, the compiler recognizes

                    the double scalar and vector types, compiles expressions involving

                    those types, and accepts calls to all builtin functions enabled by

                    the cl_khr_fp64 extension.  However, this extension does not guarantee

                    that all cl_khr_fp64 built in functions are implemented and does not

                    guarantee that the built in functions that have been implemented would

                    be considered conformant to the cl_khr_fp64 extension.

                • Re: Trinity and Richland: cl_khr_fp64 confusion again
                  rahulgarg

                  I finally have a Richland (A10-5750) based system and can clarify a few things for anyone who ends up on this thread looking for this info

                  I have installed Catalyst 13.4. The GPU supports cl_amd_fp64 but not cl_khr_fp64. The GPU can do fp64 ADDs at 1/8th the fp32 rate whereas fp64 MULs and FMAs are done at 1/16th of fp32 rate.

                  Thus, for Radeon 8650G (which as 384 cores) for example, the throughput for various fp64 instructions is:

                   

                  1. ADD: 384/8 = 48 adds/cycle

                  2. FMA: 384/16 = 24 fma/cycle

                  3. MUL: 384/16 = 24 mul/cycle

                    • Re: Trinity and Richland: cl_khr_fp64 confusion again
                      matusi143

                      I ran my mobile Richland (A10-5750) through CLBenchmark and it returned the following OpenCL Environment with 13.6 beta drivers.  I wonder if the full cl_khr_fp64 will be supported in a later driver revision.

                       

                      CL_DEVICE_EXTENSIONS

                        cl_amd_device_attribute_query

                        cl_amd_fp64

                        cl_amd_image2d_from_buffer_read_only

                        cl_amd_media_ops

                        cl_amd_media_ops2

                        cl_amd_popcnt

                        cl_amd_printf

                        cl_amd_vec3

                        cl_ext_atomic_counters_32

                        cl_khr_3d_image_writes

                        cl_khr_byte_addressable_store

                        cl_khr_d3d10_sharing

                        cl_khr_gl_sharing

                        cl_khr_global_int32_base_atomics

                        cl_khr_global_int32_extended_atomics

                        cl_khr_local_int32_base_atomics

                        cl_khr_local_int32_extended_atomics