HILA
Loading...
Searching...
No Matches
backend_lattice_struct Struct Reference

Helper class for loading the vectorized lattice. More...

#include <lattice.h>

Public Member Functions

template<int vector_size>
vectorized_lattice_struct< vector_size > * get_vectorized_lattice ()
 Returns a vectorized lattice with given vector size.
 
void setup (lattice_struct &lattice)
 setup the backend lattice data
 
void setup (lattice_struct *lattice)
 

Public Attributes

unsigned * d_neighb [NDIRS]
 Storage for the neighbour indexes. Stored on device.
 
unsigned field_alloc_size
 
int loop_begin
 

Detailed Description

Helper class for loading the vectorized lattice.

Some backends need specialized lattice data in loops. These are implemented here. Loops generated by Transformer can access this through lattice.backend_lattice.

Lattice related data that needs to be communicated to kernels

Definition at line 8 of file backend_cpu/lattice.h.

Member Function Documentation

◆ setup()

void backend_lattice_struct::setup ( lattice_struct lattice)
inline

Setup will be called when the actual lattice is set up

Definition at line 11 of file backend_cpu/lattice.h.

Member Data Documentation

◆ field_alloc_size

unsigned backend_lattice_struct::field_alloc_size

The full number of elements in a field, including haloes. This is necessary for structure-of-arrays -storage

Definition at line 17 of file backend_gpu/lattice.h.

◆ loop_begin

int backend_lattice_struct::loop_begin

beginning and end of this loop (using lattice to communicate, which may not be the clearest choice.)

Definition at line 20 of file backend_gpu/lattice.h.


The documentation for this struct was generated from the following files: