lanl/MATAR

Naming kernels via macros.

Aperta

#85 aperta il 9 mag 2024

 (1 commento) (0 reazioni) (0 assegnatari)C++ (16 fork)auto 404
documentationgood first issue

Metriche repository

Star
 (33 stelle)
Metriche merge PR
 (Metriche PR in attesa)

Descrizione

Kokkos lets us name kernels. We need to modify our macros to allow users to name the kernel. This will be super helpful for debugging, plus I think it will help us standardize the style of our macros. It would look something like this:

FOR_ALL( "SGH::get_force"
    elem_gid, 0, mesh.num_elems, {

        // do math here
});

This naming probably needs to be optional since it is optional in Kokkos, but I am not against forcing it. Me may also consider setting default names that are just the string representation of the macro name, which will at least narrow down which type of kernel launch is the bad actor.

A guide on creating macros with optional inputs is here: https://gcc.gnu.org/onlinedocs/cpp/Variadic-Macros.html

Guida contributor