Float32 performance fluctuating over time

I have coded a CFD code in Julia that has Float32 performance that increases as the simulation progresses, while the Float64 performance is constant in time. My suspicion is that is has to do with underflow in case of the Float32 numbers. I have tested this by setting set_zero_subnormals at either true or false, but I do not see any difference in performance. What else could be the case here?

My code is at GitHub - Chiil/MicroHH.jl: Julia implementation MicroHH and the test case can be run from the cases/drycbl directory using julia --project -O3 -t1 drycbl_run.jl . I could not reproduce this in a simple test program.

Iā€™m not sure what is happening in your case, but GitHub - milankl/Sherlogs.jl: A number format that inspects your code by logging the arithmetic results. is a very nice package for detecting these kinds of errors

1 Like