QUDA  v0.7.0
A library for QCD on GPUs
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Attributes | List of all members
QudaInvertParam_s Struct Reference

#include <quda.h>

Public Attributes

QudaFieldLocation input_location
 
QudaFieldLocation output_location
 
QudaDslashType dslash_type
 
QudaInverterType inv_type
 
double mass
 
double kappa
 
double m5
 
int Ls
 
double b_5 [QUDA_MAX_DWF_LS]
 
double c_5 [QUDA_MAX_DWF_LS]
 
double mu
 
double epsilon
 
QudaTwistFlavorType twist_flavor
 
double tol
 
double tol_restart
 
double tol_hq
 
double true_res
 
double true_res_hq
 
int maxiter
 
double reliable_delta
 
int use_sloppy_partial_accumulator
 
int max_res_increase
 
int max_res_increase_total
 
int pipeline
 
int num_offset
 
int overlap
 
double offset [QUDA_MAX_MULTI_SHIFT]
 
double tol_offset [QUDA_MAX_MULTI_SHIFT]
 
double tol_hq_offset [QUDA_MAX_MULTI_SHIFT]
 
double true_res_offset [QUDA_MAX_MULTI_SHIFT]
 
double true_res_hq_offset [QUDA_MAX_MULTI_SHIFT]
 
QudaSolutionType solution_type
 
QudaSolveType solve_type
 
QudaMatPCType matpc_type
 
QudaDagType dagger
 
QudaMassNormalization mass_normalization
 
QudaSolverNormalization solver_normalization
 
QudaPreserveSource preserve_source
 
QudaPrecision cpu_prec
 
QudaPrecision cuda_prec
 
QudaPrecision cuda_prec_sloppy
 
QudaPrecision cuda_prec_precondition
 
QudaDiracFieldOrder dirac_order
 
QudaGammaBasis gamma_basis
 
QudaFieldLocation clover_location
 
QudaPrecision clover_cpu_prec
 
QudaPrecision clover_cuda_prec
 
QudaPrecision clover_cuda_prec_sloppy
 
QudaPrecision clover_cuda_prec_precondition
 
QudaCloverFieldOrder clover_order
 
QudaUseInitGuess use_init_guess
 
double clover_coeff
 
int compute_clover_trlog
 
double trlogA [2]
 
QudaVerbosity verbosity
 
int sp_pad
 
int cl_pad
 
int iter
 
double spinorGiB
 
double cloverGiB
 
double gflops
 
double secs
 
QudaTune tune
 
int Nsteps
 
int gcrNkrylov
 
QudaInverterType inv_type_precondition
 
QudaDslashType dslash_type_precondition
 
QudaVerbosity verbosity_precondition
 
double tol_precondition
 
int maxiter_precondition
 
double omega
 
int precondition_cycle
 
QudaSchwarzType schwarz_type
 
QudaResidualType residual_type
 
QudaPrecision cuda_prec_ritz
 
int nev
 
int max_search_dim
 
int rhs_idx
 
int deflation_grid
 

Detailed Description

Parameters relating to the solver and the choice of Dirac operator.

Definition at line 80 of file quda.h.

Member Data Documentation

double QudaInvertParam_s::b_5[QUDA_MAX_DWF_LS]

MDWF coefficients

Definition at line 94 of file quda.h.

double QudaInvertParam_s::c_5[QUDA_MAX_DWF_LS]

will be used only for the mobius type of Fermion

Definition at line 95 of file quda.h.

int QudaInvertParam_s::cl_pad

The padding to use for the clover fields

Definition at line 177 of file quda.h.

double QudaInvertParam_s::clover_coeff

Coefficient of the clover term

Definition at line 169 of file quda.h.

QudaPrecision QudaInvertParam_s::clover_cpu_prec

The precision used for the input clover field

Definition at line 161 of file quda.h.

QudaPrecision QudaInvertParam_s::clover_cuda_prec

The precision used for the clover field in the QUDA solver

Definition at line 162 of file quda.h.

QudaPrecision QudaInvertParam_s::clover_cuda_prec_precondition

The precision used for the clover field in the QUDA preconditioner

Definition at line 164 of file quda.h.

QudaPrecision QudaInvertParam_s::clover_cuda_prec_sloppy

The precision used for the clover field in the QUDA sloppy operator

Definition at line 163 of file quda.h.

QudaFieldLocation QudaInvertParam_s::clover_location

The location of the clover field

Definition at line 160 of file quda.h.

QudaCloverFieldOrder QudaInvertParam_s::clover_order

The order of the input clover field

Definition at line 166 of file quda.h.

double QudaInvertParam_s::cloverGiB

The memory footprint of the clover fields

Definition at line 181 of file quda.h.

int QudaInvertParam_s::compute_clover_trlog

Whether to compute the trace log of the clover term

Definition at line 171 of file quda.h.

QudaPrecision QudaInvertParam_s::cpu_prec

The precision used by the input fermion fields

Definition at line 151 of file quda.h.

QudaPrecision QudaInvertParam_s::cuda_prec

The precision used by the QUDA solver

Definition at line 152 of file quda.h.

QudaPrecision QudaInvertParam_s::cuda_prec_precondition

The precision used by the QUDA preconditioner

Definition at line 154 of file quda.h.

QudaPrecision QudaInvertParam_s::cuda_prec_ritz

Parameters for deflated solvers The precision of the Ritz vectors

Definition at line 238 of file quda.h.

QudaPrecision QudaInvertParam_s::cuda_prec_sloppy

The precision used by the QUDA sloppy operator

Definition at line 153 of file quda.h.

QudaDagType QudaInvertParam_s::dagger

Whether we are using the Hermitian conjugate system or not

Definition at line 145 of file quda.h.

int QudaInvertParam_s::deflation_grid

Definition at line 246 of file quda.h.

QudaDiracFieldOrder QudaInvertParam_s::dirac_order

The order of the input and output fermion fields

Definition at line 156 of file quda.h.

QudaDslashType QudaInvertParam_s::dslash_type

The Dirac Dslash type that is being used

Definition at line 85 of file quda.h.

QudaDslashType QudaInvertParam_s::dslash_type_precondition

Dirac Dslash used in preconditioner

Definition at line 208 of file quda.h.

double QudaInvertParam_s::epsilon

Twisted mass parameter

Definition at line 98 of file quda.h.

QudaGammaBasis QudaInvertParam_s::gamma_basis

Gamma basis of the input and output host fields

Definition at line 158 of file quda.h.

int QudaInvertParam_s::gcrNkrylov

Maximum size of Krylov space used by solver

Definition at line 192 of file quda.h.

double QudaInvertParam_s::gflops

The Gflops rate of the solver

Definition at line 182 of file quda.h.

QudaFieldLocation QudaInvertParam_s::input_location

The location of the input field

Definition at line 82 of file quda.h.

QudaInverterType QudaInvertParam_s::inv_type

Which linear solver to use

Definition at line 86 of file quda.h.

QudaInverterType QudaInvertParam_s::inv_type_precondition

The inner Krylov solver used in the preconditioner. Set to QUDA_INVALID_INVERTER to disable the preconditioner entirely.

Definition at line 203 of file quda.h.

int QudaInvertParam_s::iter

The number of iterations performed by the solver

Definition at line 179 of file quda.h.

double QudaInvertParam_s::kappa

Used for Wilson and Wilson-clover

Definition at line 89 of file quda.h.

int QudaInvertParam_s::Ls

Extent of the 5th dimension (for domain wall)

Definition at line 92 of file quda.h.

double QudaInvertParam_s::m5

Domain wall height

Definition at line 91 of file quda.h.

double QudaInvertParam_s::mass

Used for staggered only

Definition at line 88 of file quda.h.

QudaMassNormalization QudaInvertParam_s::mass_normalization

The mass normalization is being used by the caller

Definition at line 146 of file quda.h.

QudaMatPCType QudaInvertParam_s::matpc_type

The preconditioned matrix type

Definition at line 144 of file quda.h.

int QudaInvertParam_s::max_res_increase

This parameter determines how many total reliable update residual increases we tolerate before terminating the solver, i.e., how long do we want to keep trying to converge

Definition at line 114 of file quda.h.

int QudaInvertParam_s::max_res_increase_total

Definition at line 119 of file quda.h.

int QudaInvertParam_s::max_search_dim

Definition at line 242 of file quda.h.

int QudaInvertParam_s::maxiter

Maximum number of iterations in the linear solver

Definition at line 107 of file quda.h.

int QudaInvertParam_s::maxiter_precondition

Maximum number of iterations allowed in the inner solver

Definition at line 216 of file quda.h.

double QudaInvertParam_s::mu

Twisted mass parameter

Definition at line 97 of file quda.h.

int QudaInvertParam_s::nev

Definition at line 240 of file quda.h.

int QudaInvertParam_s::Nsteps

Number of steps in s-step algorithms

Definition at line 189 of file quda.h.

int QudaInvertParam_s::num_offset

Number of offsets in the multi-shift solver

Definition at line 123 of file quda.h.

double QudaInvertParam_s::offset[QUDA_MAX_MULTI_SHIFT]

Offsets for multi-shift solver

Definition at line 128 of file quda.h.

double QudaInvertParam_s::omega

Relaxation parameter used in GCR-DD (default = 1.0)

Definition at line 219 of file quda.h.

QudaFieldLocation QudaInvertParam_s::output_location

The location of the output field

Definition at line 83 of file quda.h.

int QudaInvertParam_s::overlap

Width of domain overlaps

Definition at line 125 of file quda.h.

int QudaInvertParam_s::pipeline

Whether to use a pipelined solver with less global sums

Definition at line 121 of file quda.h.

int QudaInvertParam_s::precondition_cycle

Number of preconditioner cycles to perform per iteration

Definition at line 222 of file quda.h.

QudaPreserveSource QudaInvertParam_s::preserve_source

Preserve the source or not in the linear solver (deprecated)

Definition at line 149 of file quda.h.

double QudaInvertParam_s::reliable_delta

Reliable update tolerance

Definition at line 108 of file quda.h.

QudaResidualType QudaInvertParam_s::residual_type

Whether to use the L2 relative residual, Fermilab heavy-quark residual, or both to determine convergence. To require that both stopping conditions are satisfied, use a bitwise OR as follows:

p.residual_type = (QudaResidualType) (QUDA_L2_RELATIVE_RESIDUAL | QUDA_HEAVY_QUARK_RESIDUAL);

Definition at line 235 of file quda.h.

int QudaInvertParam_s::rhs_idx

Definition at line 244 of file quda.h.

QudaSchwarzType QudaInvertParam_s::schwarz_type

Whether to use additive or multiplicative Schwarz preconditioning

Definition at line 225 of file quda.h.

double QudaInvertParam_s::secs

The time taken by the solver

Definition at line 183 of file quda.h.

QudaSolutionType QudaInvertParam_s::solution_type

Type of system to solve

Definition at line 142 of file quda.h.

QudaSolveType QudaInvertParam_s::solve_type

How to solve it

Definition at line 143 of file quda.h.

QudaSolverNormalization QudaInvertParam_s::solver_normalization

The normalization desired in the solver

Definition at line 147 of file quda.h.

int QudaInvertParam_s::sp_pad

The padding to use for the fermion fields

Definition at line 176 of file quda.h.

double QudaInvertParam_s::spinorGiB

The memory footprint of the fermion fields

Definition at line 180 of file quda.h.

double QudaInvertParam_s::tol

Solver tolerance in the L2 residual norm

Definition at line 102 of file quda.h.

double QudaInvertParam_s::tol_hq

Solver tolerance in the heavy quark residual norm

Definition at line 104 of file quda.h.

double QudaInvertParam_s::tol_hq_offset[QUDA_MAX_MULTI_SHIFT]

Solver tolerance for each shift when refinement is applied using the heavy-quark residual

Definition at line 134 of file quda.h.

double QudaInvertParam_s::tol_offset[QUDA_MAX_MULTI_SHIFT]

Solver tolerance for each offset

Definition at line 131 of file quda.h.

double QudaInvertParam_s::tol_precondition

Tolerance in the inner solver

Definition at line 213 of file quda.h.

double QudaInvertParam_s::tol_restart

Solver tolerance in the L2 residual norm (used to restart InitCG)

Definition at line 103 of file quda.h.

double QudaInvertParam_s::trlogA[2]

The trace log of the clover term (even/odd computed separately)

Definition at line 172 of file quda.h.

double QudaInvertParam_s::true_res

Actual L2 residual norm achieved in solver

Definition at line 105 of file quda.h.

double QudaInvertParam_s::true_res_hq

Actual heavy quark residual norm achieved in solver

Definition at line 106 of file quda.h.

double QudaInvertParam_s::true_res_hq_offset[QUDA_MAX_MULTI_SHIFT]

Actual heavy quark residual norm achieved in solver for each offset

Definition at line 140 of file quda.h.

double QudaInvertParam_s::true_res_offset[QUDA_MAX_MULTI_SHIFT]

Actual L2 residual norm achieved in solver for each offset

Definition at line 137 of file quda.h.

QudaTune QudaInvertParam_s::tune

Enable auto-tuning? (default = QUDA_TUNE_YES)

Definition at line 185 of file quda.h.

QudaTwistFlavorType QudaInvertParam_s::twist_flavor

Twisted mass flavor

Definition at line 100 of file quda.h.

QudaUseInitGuess QudaInvertParam_s::use_init_guess

Whether to use an initial guess in the solver or not

Definition at line 167 of file quda.h.

int QudaInvertParam_s::use_sloppy_partial_accumulator

Whether to keep the partial solution accumuator in sloppy precision This parameter determines how many consective reliable update residual increases we tolerate before terminating the solver, i.e., how long do we want to keep trying to converge

Definition at line 109 of file quda.h.

QudaVerbosity QudaInvertParam_s::verbosity

The verbosity setting to use in the solver

Definition at line 174 of file quda.h.

QudaVerbosity QudaInvertParam_s::verbosity_precondition

Verbosity of the inner Krylov solver

Definition at line 210 of file quda.h.


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