AMReX-Astro / Castro

Castro (Compressible Astrophysics): An adaptive mesh, astrophysical compressible (radiation-, magneto-) hydrodynamics simulation code for massively parallel CPU and GPU architectures.

Home Page:http://amrex-astro.github.io/Castro

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

have reaction loop print out failures even when on GPU

zingale opened this issue · comments

Currently, when running on the GPU, the different integrators do not print out the failures. But we now have standardized error codes, which we can add to the burn_t. Then we can store these in Castro to output once we leave the GPU kernel.

Some of this is discussed here:

AMReX-Astro/Microphysics#705

In an ideal world, we'd setup a vector<burn_t> in Castro outside of the loop over the MF and then push back the burn_t of any zone that fails. Then outside of the GPU kernel, we'd loop over the vector and print out the failures.

This can really help with debugging.

Is there a way to do this easily with GPUs?

If you add the error code as a burn_t member, there's a couple ideas I have here for how to do some version of this.

the error codes are added to the burn_t in this PR:
AMReX-Astro/Microphysics#1254