# PW_TRANSFER

Section can be repeated.

Benchmark and test the pw_transfer routines. [Edit on GitHub]

## Keywords

- DEBUG

- GRID

- N_LOOP

- PW_GRID

- PW_GRID_BLOCKED

- PW_GRID_LAYOUT

- PW_GRID_LAYOUT_ALL

## Keyword descriptions

DEBUG: logical = F

  Lone keyword: `T`

  Usage: DEBUG

  Do the FFT in debug mode in all cases [Edit on GitHub]

GRID: integer[3] = 128 128 128

  Usage: GRID_DIMENSIONS 128 128 128

  Specify the number of grid points (not all grid points are allowed) [Edit on GitHub]

N_LOOP: integer = 100

  Usage: N_LOOP 100

  Number of pw_transfers (backward&forward) being timed [Edit on GitHub]

PW_GRID: enum = NS-FULLSPACE

  Usage: PW_GRID NS-FULLSPACE

  Valid values:

  - `SPHERICAL`

    - not tested

  - `NS-FULLSPACE` tested

  - `NS-HALFSPACE`

    - not tested

  What kind of PW_GRID should be employed [Edit on GitHub]

PW_GRID_BLOCKED: enum = FALSE

  Usage: PW_GRID_BLOCKED FREE

  Valid values:

  - `FREE` CP2K will select the optimal value

  - `TRUE` blocked

  - `FALSE` not blocked

  Expert use only, leave the default… Can be used to set the distribution in g-space for the pw grids and their FFT. [Edit on GitHub]

PW_GRID_LAYOUT: integer[2] = -1 -1

  Usage: PW_GRID_LAYOUT

  Expert use only, leave the default… Can be used to set the distribution for ray-distributed FFT. [Edit on GitHub]

PW_GRID_LAYOUT_ALL: logical = F

  Lone keyword: `T`

  Usage: PW_GRID_LAYOUT_ALL

  loop overal all PW_GRID_LAYOUTs that are compatible with a given number of CPUs [Edit on GitHub]