You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the proposal
Support running amrex::Real as float (compile with -DAMReX_PRECISION=SINGLE) and replace all uses of double with amrex::Real. Ensure that all tests still pass.
Describe alternatives you've considered
We have so far relied on users running on GPUs with hardware support for double precision arithmetic.
Additional context
Due to AI, future-generation GPUs may completely drop hardware support for double precision arithmetic.
The text was updated successfully, but these errors were encountered:
I totally agree and support this plan. I recently learned about another code under development that uses mixed precision and achieves extremely high speed, about 100 Mupdates/s/GPU on game cards (RTX 3080/3090). They use single precision for the approximate Riemann solver but use double precision in the conservation step.
Over the next couple of years, the code needs to run without double precision at all. If we need extra precision, we can do Kahan summation or represent numbers as the sum of two single precision values (then overload arithmetic operators such as + and * to emulate double precision).
Describe the proposal
Support running
amrex::Real
asfloat
(compile with-DAMReX_PRECISION=SINGLE
) and replace all uses ofdouble
withamrex::Real
. Ensure that all tests still pass.Describe alternatives you've considered
We have so far relied on users running on GPUs with hardware support for double precision arithmetic.
Additional context
Due to AI, future-generation GPUs may completely drop hardware support for double precision arithmetic.
The text was updated successfully, but these errors were encountered: