2 Replies Latest reply on Jan 27, 2012 1:33 AM by arsenm

    ddiv supported GPUs

    arsenm

      The IL documentation says that ddiv is "Valid for all GPUs that support double floating-points. " However it doesn't seem to be generated for / or work on R770 or Cypress. Instead there is a block with the comment "__ddiv_f64_fma." Is the documentation wrong?

        • Re: ddiv supported GPUs
          hazeman

          There is no true double division on all amd cards.

          Although on evergreen and newer cards you have native reduced accuracy reciprocal ( 1/x  with lower 32 bits equal to 0 ). By adding few ( ~4-5 ) mad instruction you can get true accuracy reciprocal or ddiv.

          On older cards (770) ddiv is simulated using int math ( if i remember correctly ) and results in about ~100 ops.

           

          Of course you need card supporting doubles.

          1 of 1 people found this helpful
          • Re: ddiv supported GPUs
            arsenm

            Actually my problem was not interesting. The IL snippet I was copying around somehow lost an operand on the copies I was trying on the older GPUs. I was also mislead by the "binary is not for target" error message.