Open rupertford opened 4 years ago
Once the callbacks are complete, kernel_interface
can replace kern_stub_arg_list.py
This is now causing problems for LFRic kernel transformations as in #1892 I now use the KernelInterface class when validating kernel arguments (when checking for a matching interface).
Support for 'field_bcs_kernel' needs to be implemented as this is causing white space in the GPU profile.
The reason enforce_bc_kernel
is special is that it is passed a rank-2, integer array which is essentially a mask describing which dofs are on the boundary:
integer(kind=i_def), dimension(ndf,2), intent(in) :: boundary_value
Presumably I need to add a suitable type for this to LFRicTypes @rupertford?
That would be great but you could specify it as a generic LFRic array in this issue and create a separate issue if you prefer.
At the moment only the kernel interface callback methods that are needed to pass existing tests are implemented. The remainder also need to be implemented.