Neko 0.9.99
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
gs_device Module Reference

Generic Gather-scatter backend for accelerators.

Data Types

type  gs_device_t
 Gather-scatter backend for offloading devices. More...
 
interface  hip_gather_kernel
 
interface  hip_scatter_kernel
 

Functions/Subroutines

subroutine gs_device_init (this, nlocal, nshared, nlcl_blks, nshrd_blks)
 Accelerator backend initialisation.
 
subroutine gs_device_free (this)
 Dummy backend deallocation.
 
subroutine gs_gather_device (this, v, m, o, dg, u, n, gd, nb, b, op, shrd)
 Gather kernel.
 
subroutine gs_scatter_device (this, v, m, dg, u, n, gd, nb, b, shrd, event)
 Scatter kernel.
 

Function/Subroutine Documentation

◆ gs_device_free()

subroutine gs_device::gs_device_free ( class(gs_device_t), intent(inout this)
private

Definition at line 174 of file gs_device.F90.

Here is the call graph for this function:

◆ gs_device_init()

subroutine gs_device::gs_device_init ( class(gs_device_t), intent(inout this,
integer, intent(in nlocal,
integer, intent(in nshared,
integer, intent(in nlcl_blks,
integer, intent(in nshrd_blks 
)
private

Definition at line 136 of file gs_device.F90.

Here is the call graph for this function:

◆ gs_gather_device()

subroutine gs_device::gs_gather_device ( class(gs_device_t), intent(inout this,
real(kind=rp), dimension(m), intent(inout v,
integer, intent(in m,
integer, intent(in o,
integer, dimension(m), intent(inout dg,
real(kind=rp), dimension(n), intent(inout u,
integer, intent(in n,
integer, dimension(m), intent(inout gd,
integer, intent(in nb,
integer, dimension(nb), intent(inout b,
integer, intent(in op,
logical, intent(in shrd 
)
private

Definition at line 233 of file gs_device.F90.

Here is the call graph for this function:

◆ gs_scatter_device()

subroutine gs_device::gs_scatter_device ( class(gs_device_t), intent(inout this,
real(kind=rp), dimension(m), intent(inout v,
integer, intent(in m,
integer, dimension(m), intent(inout dg,
real(kind=rp), dimension(n), intent(inout u,
integer, intent(in n,
integer, dimension(m), intent(inout gd,
integer, intent(in nb,
integer, dimension(nb), intent(inout b,
logical, intent(in shrd,
type(c_ptr)  event 
)
private

Definition at line 372 of file gs_device.F90.

Here is the call graph for this function: