Get the CRTP out of the gridoperator

Automatically determining a name for the timings table currently requires CRTP in the gridoperator. The reason we don't automatically determine a name from the function arguments is that demangling of the type names using __cxa_demangle() seems to fail, probably due to all the lambdas.

Things to try:

  • Use the mangled name and pass it through c++filt in the bench script when outputting the timings
  • Nope: __func__ (On PACXX, that seems to only contain the function name, i.e. nonlinear_jacobian_apply_imp, but not the class the function is a member of, and also not the types of the function arguments.)
Edited by Dr. Jorrit Fahlke