为什么gpu计算的数据每次都不一样呢?

如上,我使用了两个很大的float数据,

R=(一个很大的float数据)/(sqrt(一个很大的float数据)*sqrt(一个很大的float数据));

会不会是有这个可能性,gpu每次计算的数据都不一样呢?因为R最后也是float。

很困惑,有没有别的办法解决呢?因为显卡不支持double。。