7#ifndef GRID_TASK_LIST_H
8#define GRID_TASK_LIST_H
12#include "../offload/offload_buffer.h"
13#include "../offload/offload_runtime.h"
33#if defined(__OFFLOAD) && !defined(__NO_OFFLOAD_GRID)
34 grid_gpu_task_list *gpu;
36#if defined(__OFFLOAD_HIP) && !defined(__NO_OFFLOAD_GRID)
37 grid_hip_task_list *hip;
83void grid_create_task_list(
84 const bool orthorhombic,
const int ntasks,
const int nlevels,
85 const int natoms,
const int nkinds,
const int nblocks,
86 const int block_offsets[nblocks],
const double atom_positions[natoms][3],
87 const int atom_kinds[natoms],
const grid_basis_set *basis_sets[nkinds],
88 const int level_list[ntasks],
const int iatom_list[ntasks],
89 const int jatom_list[ntasks],
const int iset_list[ntasks],
90 const int jset_list[ntasks],
const int ipgf_list[ntasks],
91 const int jpgf_list[ntasks],
const int border_mask_list[ntasks],
92 const int block_num_list[ntasks],
const double radius_list[ntasks],
93 const double rab_list[ntasks][3],
const int npts_global[nlevels][3],
94 const int npts_local[nlevels][3],
const int shift_local[nlevels][3],
95 const int border_width[nlevels][3],
const double dh[nlevels][3][3],
120 const enum grid_func func,
const int nlevels,
146void grid_integrate_task_list(
147 const grid_task_list *task_list,
const bool compute_tau,
const int natoms,
148 const int nlevels,
const int npts_local[nlevels][3],
150 offload_buffer *hab_blocks,
double forces[natoms][3],
double virial[3][3]);
static void const int const int const int const int const int const double const int const int const int npts_local[3]
Internal representation of a basis set.
Internal representation of a task list.
Internal representation of a task list.
Internal representation of a task list, abstracting various backends.
grid_dgemm_task_list * dgemm
Internal representation of a buffer.