I have read up on floating precision and there might be an issue with
rounding modes.

https://developer.nvidia.com/content/precision-performance-floating-point-and-ieee-754-compliance-nvidia-gpus

Of course this is rounding for float/double register results, not the
round() function, but I can imagine the same circuitry being re-used. In
a nutshell, there are 4 different rounding modes:

- rn: round to nearest, ties to even
- rz: round towards zero
- ru: round towards +infty
- rd: round towards -infty

My round(88.9f) == 88.0 problem could occur when "rd" is active for some
reason. And now my question: Is the rounding mode set somewhere in pyopencl?

Kind regards,

  Kai



On 14.04.2014 02:04, Andreas Kloeckner wrote:
> Kai Ruhl <[email protected]> writes:
> 
>> thanks for the quick response -- I also tested it on a Titan Black
>> which gives correct results. It is *just* the Ti780. I use the x-swat
>> nvidia drivers 334 for Ubuntu 14.04.
>>
>> In the meantime, I used the AMD SDK lib to compile pyopencl with
>> OCL1.2, still the same error.
> 
> As in, AMD OpenCL gives you 88.0 as well?
> 
> Andreas
> 

_______________________________________________
PyOpenCL mailing list
[email protected]
http://lists.tiker.net/listinfo/pyopencl

Reply via email to