|
Neko 1.99.9
A portable framework for high-order spectral element flow simulations
|
Gather-scatter backend. More...


Public Member Functions | |
| procedure(gs_backend_init), deferred, pass | init (this, nlocal, nshared, nlcl_blks, nshrd_blks) |
| procedure(gs_backend_free), deferred, pass | free (this) |
| procedure(gs_gather), deferred, pass | gather (this, v, m, o, dg, u, n, gd, nb, b, bo, op, shrd) |
| procedure(gs_scatter), deferred, pass | scatter (this, v, m, dg, u, n, gd, nb, b, bo, shrd, event) |
Public Attributes | |
| type(c_ptr) | gather_event = C_NULL_PTR |
| type(c_ptr) | scatter_event = C_NULL_PTR |
| type(c_ptr) | gs_stream = C_NULL_PTR |
| logical | shared_on_host = .true. |
| Shared points are handled on the host (device backends only). Kept in the base type so that it can be set without a select type: a select type (gs_device_t) assignment to it miscompiles with CCE 21 at -O2/-O3, silently leaving the shared points on the host so that the scatter overwrites the unpacked halo with the stale host buffer. | |
Definition at line 44 of file gs_bcknd.f90.
|
pure virtual |
Definition at line 56 of file gs_bcknd.f90.
|
pure virtual |
Definition at line 57 of file gs_bcknd.f90.
|
pure virtual |
Definition at line 55 of file gs_bcknd.f90.
|
pure virtual |
Definition at line 58 of file gs_bcknd.f90.
| type(c_ptr) gs_bcknd::gs_bcknd_t::gather_event = C_NULL_PTR |
Definition at line 45 of file gs_bcknd.f90.
| type(c_ptr) gs_bcknd::gs_bcknd_t::gs_stream = C_NULL_PTR |
Definition at line 47 of file gs_bcknd.f90.
| type(c_ptr) gs_bcknd::gs_bcknd_t::scatter_event = C_NULL_PTR |
Definition at line 46 of file gs_bcknd.f90.
| logical gs_bcknd::gs_bcknd_t::shared_on_host = .true. |
Definition at line 53 of file gs_bcknd.f90.