use precise_math instead of fast_math, need double precision support in GPU