QUDA  v1.1.0
A library for QCD on GPUs
Macros | Functions | Variables
host_utils.h File Reference
#include <quda.h>
#include <random_quda.h>
#include <vector>
#include <color_spinor_field.h>

Go to the source code of this file.

Macros

#define gauge_site_size   18
 
#define spinor_site_size   24
 
#define stag_spinor_site_size   6
 
#define clover_site_size   72
 
#define mom_site_size   10
 
#define hw_site_size   12
 

Functions

void setQudaStaggeredEigTestParams ()
 
void setQudaStaggeredInvTestParams ()
 
void constructStaggeredHostGhostGaugeField (quda::GaugeField *cpuFat, quda::GaugeField *cpuLong, void *milc_fatlink, void *milc_longlink, QudaGaugeParam &gauge_param)
 
void constructStaggeredHostDeviceGaugeField (void **qdp_inlink, void **qdp_longlink_cpu, void **qdp_longlink_gpu, void **qdp_fatlink_cpu, void **qdp_fatlink_gpu, QudaGaugeParam &gauge_param, int argc, char **argv, bool &gauge_loaded)
 
void constructStaggeredHostGaugeField (void **qdp_inlink, void **qdp_longlink, void **qdp_fatlink, QudaGaugeParam &gauge_param, int argc, char **argv)
 
void constructFatLongGaugeField (void **fatlink, void **longlink, int type, QudaPrecision precision, QudaGaugeParam *, QudaDslashType dslash_type)
 
void loadFatLongGaugeQuda (void *milc_fatlink, void *milc_longlink, QudaGaugeParam &gauge_param)
 
void computeLongLinkCPU (void **longlink, void **sitelink, QudaPrecision prec, void *act_path_coeff)
 
void computeHISQLinksCPU (void **fatlink, void **longlink, void **fatlink_eps, void **longlink_eps, void **sitelink, void *qudaGaugeParamPtr, double **act_path_coeffs, double eps_naik)
 
template<typename Float >
void applyGaugeFieldScaling_long (Float **gauge, int Vh, QudaGaugeParam *param, QudaDslashType dslash_type)
 
void applyGaugeFieldScaling_long (void **gauge, int Vh, QudaGaugeParam *param, QudaDslashType dslash_type, QudaPrecision local_prec)
 
template<typename Float >
void applyStaggeredScaling (Float **res, QudaGaugeParam *param, int type)
 
void constructStaggeredTestSpinorParam (quda::ColorSpinorParam *csParam, const QudaInvertParam *inv_param, const QudaGaugeParam *gauge_param)
 
void reorderQDPtoMILC (void *milc_out, void **qdp_in, int V, int siteSize, QudaPrecision out_precision, QudaPrecision in_precision)
 
void reorderMILCtoQDP (void **qdp_out, void *milc_in, int V, int siteSize, QudaPrecision out_precision, QudaPrecision in_precision)
 
void setQudaPrecisions ()
 
void setQudaMgSolveTypes ()
 
void setQudaDefaultMgTestParams ()
 
void constructQudaGaugeField (void **gauge, int type, QudaPrecision precision, QudaGaugeParam *param)
 
void constructHostGaugeField (void **gauge, QudaGaugeParam &gauge_param, int argc, char **argv)
 
void constructHostCloverField (void *clover, void *clover_inv, QudaInvertParam &inv_param)
 
void constructQudaCloverField (void *clover, double norm, double diag, QudaPrecision precision)
 
template<typename Float >
void constructCloverField (Float *res, double norm, double diag)
 
template<typename Float >
void constructUnitGaugeField (Float **res, QudaGaugeParam *param)
 
template<typename Float >
void constructRandomGaugeField (Float **res, QudaGaugeParam *param, QudaDslashType dslash_type=QUDA_WILSON_DSLASH)
 
template<typename Float >
void applyGaugeFieldScaling (Float **gauge, int Vh, QudaGaugeParam *param)
 
void constructWilsonTestSpinorParam (quda::ColorSpinorParam *csParam, const QudaInvertParam *inv_param, const QudaGaugeParam *gauge_param)
 
void constructRandomSpinorSource (void *v, int nSpin, int nColor, QudaPrecision precision, QudaSolutionType sol_type, const int *const x, quda::RNG &rng)
 
bool isPCSolution (QudaSolutionType solution_type)
 
void performanceStats (std::vector< double > &time, std::vector< double > &gflops, std::vector< int > &iter)
 
void initComms (int argc, char **argv, std::array< int, 4 > &commDims)
 
void initComms (int argc, char **argv, int *const commDims)
 
void finalizeComms ()
 
void initRand ()
 
int lex_rank_from_coords_t (const int *coords, void *fdata)
 
int lex_rank_from_coords_x (const int *coords, void *fdata)
 
void get_size_from_env (int *const dims, const char env[])
 
void setDims (int *X)
 
void dw_setDims (int *X, const int L5)
 
int dimPartitioned (int dim)
 
bool last_node_in_t ()
 
int index_4d_cb_from_coordinate_4d (const int coordinate[4], const int dim[4])
 
void coordinate_from_shrinked_index (int coordinate[4], int shrinked_index, const int shrinked_dim[4], const int shift[4], int parity)
 
int neighborIndex (int i, int oddBit, int dx4, int dx3, int dx2, int dx1)
 
int neighborIndexFullLattice (int i, int dx4, int dx3, int dx2, int dx1)
 
int neighborIndex (int dim[], int index, int oddBit, int dx[])
 
int neighborIndexFullLattice (int dim[], int index, int dx[])
 
int neighborIndex_mg (int i, int oddBit, int dx4, int dx3, int dx2, int dx1)
 
int neighborIndexFullLattice_mg (int i, int dx4, int dx3, int dx2, int dx1)
 
void printSpinorElement (void *spinor, int X, QudaPrecision precision)
 
void printGaugeElement (void *gauge, int X, QudaPrecision precision)
 
template<typename Float >
void printVector (Float *v)
 
int fullLatticeIndex (int i, int oddBit)
 
int fullLatticeIndex (int dim[], int index, int oddBit)
 
int getOddBit (int X)
 
void createSiteLinkCPU (void **link, QudaPrecision precision, int phase)
 
void su3_construct (void *mat, QudaReconstructType reconstruct, QudaPrecision precision)
 
void su3_reconstruct (void *mat, int dir, int ga_idx, QudaReconstructType reconstruct, QudaPrecision precision, QudaGaugeParam *param)
 
void compare_spinor (void *spinor_cpu, void *spinor_gpu, int len, QudaPrecision precision)
 
void strong_check (void *spinor, void *spinorGPU, int len, QudaPrecision precision)
 
int compare_floats (void *a, void *b, int len, double epsilon, QudaPrecision precision)
 
void check_gauge (void **, void **, double epsilon, QudaPrecision precision)
 
int strong_check_link (void **linkA, const char *msgA, void **linkB, const char *msgB, int len, QudaPrecision prec)
 
int strong_check_mom (void *momA, void *momB, int len, QudaPrecision prec)
 
double mom_action (void *mom, QudaPrecision prec, int len)
 Host reference implementation of the momentum action contribution. More...
 
void createMomCPU (void *mom, QudaPrecision precision)
 
void createHwCPU (void *hw, QudaPrecision precision)
 
int x4_from_full_index (int i)
 
int fullLatticeIndex_4d (int i, int oddBit)
 
int fullLatticeIndex_5d (int i, int oddBit)
 
int fullLatticeIndex_5d_4dpc (int i, int oddBit)
 
int process_command_line_option (int argc, char **argv, int *idx)
 
int process_options (int argc, char **argv)
 
void exchange_cpu_sitelink (int *X, void **sitelink, void **ghost_sitelink, void **ghost_sitelink_diag, QudaPrecision gPrecision, QudaGaugeParam *param, int optflag)
 
void exchange_cpu_sitelink_ex (int *X, int *R, void **sitelink, QudaGaugeFieldOrder cpu_order, QudaPrecision gPrecision, int optflag, int geometry)
 
void exchange_cpu_staple (int *X, void *staple, void **ghost_staple, QudaPrecision gPrecision)
 
void exchange_llfat_init (QudaPrecision prec)
 
void exchange_llfat_cleanup (void)
 
double norm_2 (void *vector, int len, QudaPrecision precision)
 
void mxpy (void *x, void *y, int len, QudaPrecision precision)
 
void ax (double a, void *x, int len, QudaPrecision precision)
 
void axpy (double a, void *x, void *y, int len, QudaPrecision precision)
 
void xpay (void *x, double a, void *y, int len, QudaPrecision precision)
 
void cxpay (void *x, double _Complex a, void *y, int len, QudaPrecision precision)
 
void cpu_axy (QudaPrecision prec, double a, void *x, void *y, int size)
 
void cpu_xpy (QudaPrecision prec, void *x, void *y, int size)
 
void stopwatchStart ()
 
double stopwatchReadSeconds ()
 
void performanceStats (double *time, double *gflops)
 
QudaPrecision getPrecision (int i)
 
int getReconstructNibble (QudaReconstructType recon)
 
double getTolerance (QudaPrecision prec)
 
void setMultigridParam (QudaMultigridParam &mg_param)
 
void setStaggeredMultigridParam (QudaMultigridParam &mg_param)
 
void setDeflationParam (QudaEigParam &df_param)
 
void setMultigridEigParam (QudaEigParam &eig_param, int level)
 
void setEigParam (QudaEigParam &eig_param)
 
void setInvertParam (QudaInvertParam &inv_param)
 
void setContractInvertParam (QudaInvertParam &inv_param)
 
void setMultigridInvertParam (QudaInvertParam &inv_param)
 
void setDeflatedInvertParam (QudaInvertParam &inv_param)
 
void setStaggeredInvertParam (QudaInvertParam &inv_param)
 
void setStaggeredMGInvertParam (QudaInvertParam &inv_param)
 
void setGaugeParam (QudaGaugeParam &gauge_param)
 
void setWilsonGaugeParam (QudaGaugeParam &gauge_param)
 
void setStaggeredGaugeParam (QudaGaugeParam &gauge_param)
 

Variables

int Z [4]
 
int V
 
int Vh
 
int Vs_x
 
int Vs_y
 
int Vs_z
 
int Vs_t
 
int Vsh_x
 
int Vsh_y
 
int Vsh_z
 
int Vsh_t
 
int faceVolume [4]
 
int E1
 
int E1h
 
int E2
 
int E3
 
int E4
 
int E [4]
 
int V_ex
 
int Vh_ex
 
double kappa5
 
int Ls
 
int V5
 
int V5h
 
size_t host_gauge_data_type_size
 
size_t host_spinor_data_type_size
 
size_t host_clover_data_type_size
 
QudaPrecisioncpu_prec
 
QudaPrecisioncuda_prec
 
QudaPrecisioncuda_prec_sloppy
 
QudaPrecisioncuda_prec_precondition
 
QudaPrecisioncuda_prec_eigensolver
 
QudaPrecisioncuda_prec_refinement_sloppy
 
QudaPrecisioncuda_prec_ritz
 

Macro Definition Documentation

◆ clover_site_size

#define clover_site_size   72

Definition at line 11 of file host_utils.h.

◆ gauge_site_size

#define gauge_site_size   18

Definition at line 8 of file host_utils.h.

◆ hw_site_size

#define hw_site_size   12

Definition at line 13 of file host_utils.h.

◆ mom_site_size

#define mom_site_size   10

Definition at line 12 of file host_utils.h.

◆ spinor_site_size

#define spinor_site_size   24

Definition at line 9 of file host_utils.h.

◆ stag_spinor_site_size

#define stag_spinor_site_size   6

Definition at line 10 of file host_utils.h.

Function Documentation

◆ applyGaugeFieldScaling()

template<typename Float >
void applyGaugeFieldScaling ( Float **  gauge,
int  Vh,
QudaGaugeParam param 
)

Definition at line 968 of file host_utils.cpp.

◆ applyGaugeFieldScaling_long() [1/2]

template<typename Float >
void applyGaugeFieldScaling_long ( Float **  gauge,
int  Vh,
QudaGaugeParam param,
QudaDslashType  dslash_type 
)

Definition at line 779 of file staggered_host_utils.cpp.

◆ applyGaugeFieldScaling_long() [2/2]

void applyGaugeFieldScaling_long ( void **  gauge,
int  Vh,
QudaGaugeParam param,
QudaDslashType  dslash_type,
QudaPrecision  local_prec 
)

Definition at line 864 of file staggered_host_utils.cpp.

◆ applyStaggeredScaling()

template<typename Float >
void applyStaggeredScaling ( Float **  res,
QudaGaugeParam param,
int  type 
)

Definition at line 770 of file staggered_host_utils.cpp.

◆ ax()

void ax ( double  a,
void *  x,
int  len,
QudaPrecision  precision 
)

Definition at line 22 of file host_blas.cpp.

◆ axpy()

void axpy ( double  a,
void *  x,
void *  y,
int  len,
QudaPrecision  precision 
)

Definition at line 11 of file host_blas.cpp.

◆ check_gauge()

void check_gauge ( void **  oldG,
void **  newG,
double  epsilon,
QudaPrecision  precision 
)

Definition at line 1255 of file host_utils.cpp.

◆ compare_floats()

int compare_floats ( void *  a,
void *  b,
int  len,
double  epsilon,
QudaPrecision  precision 
)

Definition at line 889 of file host_utils.cpp.

◆ compare_spinor()

void compare_spinor ( void *  spinor_cpu,
void *  spinor_gpu,
int  len,
QudaPrecision  precision 
)

◆ computeHISQLinksCPU()

void computeHISQLinksCPU ( void **  fatlink,
void **  longlink,
void **  fatlink_eps,
void **  longlink_eps,
void **  sitelink,
void *  qudaGaugeParamPtr,
double **  act_path_coeffs,
double  eps_naik 
)

Definition at line 352 of file staggered_host_utils.cpp.

◆ computeLongLinkCPU()

void computeLongLinkCPU ( void **  longlink,
void **  sitelink,
QudaPrecision  prec,
void *  act_path_coeff 
)

Definition at line 330 of file staggered_host_utils.cpp.

◆ constructCloverField()

template<typename Float >
void constructCloverField ( Float *  res,
double  norm,
double  diag 
)

Definition at line 1189 of file host_utils.cpp.

◆ constructFatLongGaugeField()

void constructFatLongGaugeField ( void **  fatlink,
void **  longlink,
int  type,
QudaPrecision  precision,
QudaGaugeParam param,
QudaDslashType  dslash_type 
)

Definition at line 134 of file staggered_host_utils.cpp.

◆ constructHostCloverField()

void constructHostCloverField ( void *  clover,
void *  clover_inv,
QudaInvertParam inv_param 
)

Definition at line 186 of file host_utils.cpp.

◆ constructHostGaugeField()

void constructHostGaugeField ( void **  gauge,
QudaGaugeParam gauge_param,
int  argc,
char **  argv 
)

Definition at line 166 of file host_utils.cpp.

◆ constructQudaCloverField()

void constructQudaCloverField ( void *  clover,
double  norm,
double  diag,
QudaPrecision  precision 
)

Definition at line 199 of file host_utils.cpp.

◆ constructQudaGaugeField()

void constructQudaGaugeField ( void **  gauge,
int  type,
QudaPrecision  precision,
QudaGaugeParam param 
)

Definition at line 146 of file host_utils.cpp.

◆ constructRandomGaugeField()

template<typename Float >
void constructRandomGaugeField ( Float **  res,
QudaGaugeParam param,
QudaDslashType  dslash_type = QUDA_WILSON_DSLASH 
)

Definition at line 1049 of file host_utils.cpp.

◆ constructRandomSpinorSource()

void constructRandomSpinorSource ( void *  v,
int  nSpin,
int  nColor,
QudaPrecision  precision,
QudaSolutionType  sol_type,
const int *const  x,
quda::RNG rng 
)

Definition at line 235 of file host_utils.cpp.

◆ constructStaggeredHostDeviceGaugeField()

void constructStaggeredHostDeviceGaugeField ( void **  qdp_inlink,
void **  qdp_longlink_cpu,
void **  qdp_longlink_gpu,
void **  qdp_fatlink_cpu,
void **  qdp_fatlink_gpu,
QudaGaugeParam gauge_param,
int  argc,
char **  argv,
bool &  gauge_loaded 
)

Definition at line 46 of file staggered_host_utils.cpp.

◆ constructStaggeredHostGaugeField()

void constructStaggeredHostGaugeField ( void **  qdp_inlink,
void **  qdp_longlink,
void **  qdp_fatlink,
QudaGaugeParam gauge_param,
int  argc,
char **  argv 
)

Definition at line 94 of file staggered_host_utils.cpp.

◆ constructStaggeredHostGhostGaugeField()

void constructStaggeredHostGhostGaugeField ( quda::GaugeField cpuFat,
quda::GaugeField cpuLong,
void *  milc_fatlink,
void *  milc_longlink,
QudaGaugeParam gauge_param 
)

Definition at line 29 of file staggered_host_utils.cpp.

◆ constructStaggeredTestSpinorParam()

void constructStaggeredTestSpinorParam ( quda::ColorSpinorParam csParam,
const QudaInvertParam inv_param,
const QudaGaugeParam gauge_param 
)

Definition at line 688 of file staggered_host_utils.cpp.

◆ constructUnitGaugeField()

template<typename Float >
void constructUnitGaugeField ( Float **  res,
QudaGaugeParam param 
)

Definition at line 1006 of file host_utils.cpp.

◆ constructWilsonTestSpinorParam()

void constructWilsonTestSpinorParam ( quda::ColorSpinorParam csParam,
const QudaInvertParam inv_param,
const QudaGaugeParam gauge_param 
)

Definition at line 207 of file host_utils.cpp.

◆ coordinate_from_shrinked_index()

void coordinate_from_shrinked_index ( int  coordinate[4],
int  shrinked_index,
const int  shrinked_dim[4],
const int  shift[4],
int  parity 
)

Definition at line 393 of file host_utils.cpp.

◆ cpu_axy()

void cpu_axy ( QudaPrecision  prec,
double  a,
void *  x,
void *  y,
int  size 
)

Definition at line 74 of file host_blas.cpp.

◆ cpu_xpy()

void cpu_xpy ( QudaPrecision  prec,
void *  x,
void *  y,
int  size 
)

Definition at line 87 of file host_blas.cpp.

◆ createHwCPU()

void createHwCPU ( void *  hw,
QudaPrecision  precision 
)

Definition at line 1485 of file host_utils.cpp.

◆ createMomCPU()

void createMomCPU ( void *  mom,
QudaPrecision  precision 
)

Definition at line 1450 of file host_utils.cpp.

◆ createSiteLinkCPU()

void createSiteLinkCPU ( void **  link,
QudaPrecision  precision,
int  phase 
)

Definition at line 1263 of file host_utils.cpp.

◆ cxpay()

void cxpay ( void *  x,
double _Complex  a,
void *  y,
int  len,
QudaPrecision  precision 
)

Definition at line 64 of file host_blas.cpp.

◆ dimPartitioned()

int dimPartitioned ( int  dim)

Definition at line 376 of file host_utils.cpp.

◆ dw_setDims()

void dw_setDims ( int *  X,
const int  L5 
)

Definition at line 353 of file host_utils.cpp.

◆ exchange_cpu_sitelink()

void exchange_cpu_sitelink ( int *  X,
void **  sitelink,
void **  ghost_sitelink,
void **  ghost_sitelink_diag,
QudaPrecision  gPrecision,
QudaGaugeParam param,
int  optflag 
)

Definition at line 512 of file face_gauge.cpp.

◆ exchange_cpu_sitelink_ex()

void exchange_cpu_sitelink_ex ( int *  X,
int *  R,
void **  sitelink,
QudaGaugeFieldOrder  cpu_order,
QudaPrecision  gPrecision,
int  optflag,
int  geometry 
)

Definition at line 644 of file face_gauge.cpp.

◆ exchange_cpu_staple()

void exchange_cpu_staple ( int *  X,
void *  staple,
void **  ghost_staple,
QudaPrecision  gPrecision 
)

Definition at line 976 of file face_gauge.cpp.

◆ exchange_llfat_cleanup()

void exchange_llfat_cleanup ( void  )

Definition at line 1003 of file face_gauge.cpp.

◆ exchange_llfat_init()

void exchange_llfat_init ( QudaPrecision  prec)

Definition at line 373 of file face_gauge.cpp.

◆ finalizeComms()

void finalizeComms ( )

Definition at line 292 of file host_utils.cpp.

◆ fullLatticeIndex() [1/2]

int fullLatticeIndex ( int  dim[],
int  index,
int  oddBit 
)

◆ fullLatticeIndex() [2/2]

int fullLatticeIndex ( int  i,
int  oddBit 
)

Definition at line 605 of file host_utils.cpp.

◆ fullLatticeIndex_4d()

int fullLatticeIndex_4d ( int  i,
int  oddBit 
)

Definition at line 902 of file host_utils.cpp.

◆ fullLatticeIndex_5d()

int fullLatticeIndex_5d ( int  i,
int  oddBit 
)

Definition at line 940 of file host_utils.cpp.

◆ fullLatticeIndex_5d_4dpc()

int fullLatticeIndex_5d_4dpc ( int  i,
int  oddBit 
)

Definition at line 947 of file host_utils.cpp.

◆ get_size_from_env()

void get_size_from_env ( int *const  dims,
const char  env[] 
)

For MPI, the default node mapping is lexicographical with t varying fastest.

Definition at line 645 of file host_utils.cpp.

◆ getOddBit()

int getOddBit ( int  X)

Definition at line 682 of file host_utils.cpp.

◆ getPrecision()

QudaPrecision getPrecision ( int  i)
inline

Definition at line 222 of file host_utils.h.

◆ getReconstructNibble()

int getReconstructNibble ( QudaReconstructType  recon)
inline

Definition at line 233 of file host_utils.h.

◆ getTolerance()

double getTolerance ( QudaPrecision  prec)
inline

Definition at line 245 of file host_utils.h.

◆ index_4d_cb_from_coordinate_4d()

int index_4d_cb_from_coordinate_4d ( const int  coordinate[4],
const int  dim[4] 
)

Definition at line 388 of file host_utils.cpp.

◆ initComms() [1/2]

void initComms ( int  argc,
char **  argv,
int *const  commDims 
)

Definition at line 257 of file host_utils.cpp.

◆ initComms() [2/2]

void initComms ( int  argc,
char **  argv,
std::array< int, 4 > &  commDims 
)

Definition at line 255 of file host_utils.cpp.

◆ initRand()

void initRand ( )

Definition at line 302 of file host_utils.cpp.

◆ isPCSolution()

bool isPCSolution ( QudaSolutionType  solution_type)
inline

Definition at line 112 of file host_utils.h.

◆ last_node_in_t()

bool last_node_in_t ( )

Definition at line 378 of file host_utils.cpp.

◆ lex_rank_from_coords_t()

int lex_rank_from_coords_t ( const int *  coords,
void *  fdata 
)

Definition at line 662 of file host_utils.cpp.

◆ lex_rank_from_coords_x()

int lex_rank_from_coords_x ( const int *  coords,
void *  fdata 
)

Definition at line 669 of file host_utils.cpp.

◆ loadFatLongGaugeQuda()

void loadFatLongGaugeQuda ( void *  milc_fatlink,
void *  milc_longlink,
QudaGaugeParam gauge_param 
)

Definition at line 223 of file staggered_host_utils.cpp.

◆ mom_action()

double mom_action ( void *  mom,
QudaPrecision  prec,
int  len 
)

Host reference implementation of the momentum action contribution.

Definition at line 1601 of file host_utils.cpp.

◆ mxpy()

void mxpy ( void *  x,
void *  y,
int  len,
QudaPrecision  precision 
)

Definition at line 33 of file host_blas.cpp.

◆ neighborIndex() [1/2]

int neighborIndex ( int  dim[],
int  index,
int  oddBit,
int  dx[] 
)

◆ neighborIndex() [2/2]

int neighborIndex ( int  i,
int  oddBit,
int  dx4,
int  dx3,
int  dx2,
int  dx1 
)

Definition at line 423 of file host_utils.cpp.

◆ neighborIndex_mg()

int neighborIndex_mg ( int  i,
int  oddBit,
int  dx4,
int  dx3,
int  dx2,
int  dx1 
)

Definition at line 457 of file host_utils.cpp.

◆ neighborIndexFullLattice() [1/2]

int neighborIndexFullLattice ( int  dim[],
int  index,
int  dx[] 
)

◆ neighborIndexFullLattice() [2/2]

int neighborIndexFullLattice ( int  i,
int  dx4,
int  dx3,
int  dx2,
int  dx1 
)

Definition at line 490 of file host_utils.cpp.

◆ neighborIndexFullLattice_mg()

int neighborIndexFullLattice_mg ( int  i,
int  dx4,
int  dx3,
int  dx2,
int  dx1 
)

Definition at line 528 of file host_utils.cpp.

◆ norm_2()

double norm_2 ( void *  vector,
int  len,
QudaPrecision  precision 
)

Definition at line 48 of file host_blas.cpp.

◆ performanceStats() [1/2]

void performanceStats ( double *  time,
double *  gflops 
)

◆ performanceStats() [2/2]

void performanceStats ( std::vector< double > &  time,
std::vector< double > &  gflops,
std::vector< int > &  iter 
)

Definition at line 1627 of file host_utils.cpp.

◆ printGaugeElement()

void printGaugeElement ( void *  gauge,
int  X,
QudaPrecision  precision 
)

Definition at line 575 of file host_utils.cpp.

◆ printSpinorElement()

void printSpinorElement ( void *  spinor,
int  X,
QudaPrecision  precision 
)

Definition at line 566 of file host_utils.cpp.

◆ printVector()

template<typename Float >
void printVector ( Float *  v)

Definition at line 676 of file host_utils.cpp.

◆ process_command_line_option()

int process_command_line_option ( int  argc,
char **  argv,
int *  idx 
)

◆ process_options()

int process_options ( int  argc,
char **  argv 
)

◆ reorderMILCtoQDP()

void reorderMILCtoQDP ( void **  qdp_out,
void *  milc_in,
int  V,
int  siteSize,
QudaPrecision  out_precision,
QudaPrecision  in_precision 
)

Definition at line 752 of file staggered_host_utils.cpp.

◆ reorderQDPtoMILC()

void reorderQDPtoMILC ( void *  milc_out,
void **  qdp_in,
int  V,
int  siteSize,
QudaPrecision  out_precision,
QudaPrecision  in_precision 
)

Definition at line 723 of file staggered_host_utils.cpp.

◆ setContractInvertParam()

void setContractInvertParam ( QudaInvertParam inv_param)

Definition at line 768 of file set_params.cpp.

◆ setDeflatedInvertParam()

void setDeflatedInvertParam ( QudaInvertParam inv_param)

For deflated solvers only:

Definition at line 1183 of file set_params.cpp.

◆ setDeflationParam()

void setDeflationParam ( QudaEigParam df_param)

Definition at line 1313 of file set_params.cpp.

◆ setDims()

void setDims ( int *  X)

Definition at line 315 of file host_utils.cpp.

◆ setEigParam()

void setEigParam ( QudaEigParam eig_param)

Definition at line 263 of file set_params.cpp.

◆ setGaugeParam()

void setGaugeParam ( QudaGaugeParam gauge_param)

Definition at line 64 of file su3_test.cpp.

◆ setInvertParam()

void setInvertParam ( QudaInvertParam inv_param)

Definition at line 113 of file set_params.cpp.

◆ setMultigridEigParam()

void setMultigridEigParam ( QudaEigParam eig_param,
int  level 
)

Definition at line 712 of file set_params.cpp.

◆ setMultigridInvertParam()

void setMultigridInvertParam ( QudaInvertParam inv_param)

Definition at line 600 of file set_params.cpp.

◆ setMultigridParam()

void setMultigridParam ( QudaMultigridParam mg_param)

Definition at line 326 of file set_params.cpp.

◆ setQudaDefaultMgTestParams()

void setQudaDefaultMgTestParams ( )

Definition at line 89 of file host_utils.cpp.

◆ setQudaMgSolveTypes()

void setQudaMgSolveTypes ( )

Definition at line 81 of file host_utils.cpp.

◆ setQudaPrecisions()

void setQudaPrecisions ( )

Definition at line 69 of file host_utils.cpp.

◆ setQudaStaggeredEigTestParams()

void setQudaStaggeredEigTestParams ( )

Definition at line 1397 of file set_params.cpp.

◆ setQudaStaggeredInvTestParams()

void setQudaStaggeredInvTestParams ( )

Definition at line 1332 of file set_params.cpp.

◆ setStaggeredGaugeParam()

void setStaggeredGaugeParam ( QudaGaugeParam gauge_param)

Definition at line 69 of file set_params.cpp.

◆ setStaggeredInvertParam()

void setStaggeredInvertParam ( QudaInvertParam inv_param)

Definition at line 868 of file set_params.cpp.

◆ setStaggeredMGInvertParam()

void setStaggeredMGInvertParam ( QudaInvertParam inv_param)

Definition at line 792 of file set_params.cpp.

◆ setStaggeredMultigridParam()

void setStaggeredMultigridParam ( QudaMultigridParam mg_param)

Definition at line 951 of file set_params.cpp.

◆ setWilsonGaugeParam()

void setWilsonGaugeParam ( QudaGaugeParam gauge_param)

Definition at line 37 of file set_params.cpp.

◆ stopwatchReadSeconds()

double stopwatchReadSeconds ( )

Definition at line 1617 of file host_utils.cpp.

◆ stopwatchStart()

void stopwatchStart ( )

Definition at line 1615 of file host_utils.cpp.

◆ strong_check()

void strong_check ( void *  spinor,
void *  spinorGPU,
int  len,
QudaPrecision  precision 
)

◆ strong_check_link()

int strong_check_link ( void **  linkA,
const char *  msgA,
void **  linkB,
const char *  msgB,
int  len,
QudaPrecision  prec 
)

Definition at line 1428 of file host_utils.cpp.

◆ strong_check_mom()

int strong_check_mom ( void *  momA,
void *  momB,
int  len,
QudaPrecision  prec 
)

Definition at line 1551 of file host_utils.cpp.

◆ su3_construct()

void su3_construct ( void *  mat,
QudaReconstructType  reconstruct,
QudaPrecision  precision 
)

Definition at line 758 of file host_utils.cpp.

◆ su3_reconstruct()

void su3_reconstruct ( void *  mat,
int  dir,
int  ga_idx,
QudaReconstructType  reconstruct,
QudaPrecision  precision,
QudaGaugeParam param 
)

Definition at line 861 of file host_utils.cpp.

◆ x4_from_full_index()

int x4_from_full_index ( int  i)

Definition at line 953 of file host_utils.cpp.

◆ xpay()

void xpay ( void *  x,
double  a,
void *  y,
int  len,
QudaPrecision  precision 
)

Definition at line 59 of file host_blas.cpp.

Variable Documentation

◆ cpu_prec

QudaPrecision& cpu_prec
extern

Definition at line 57 of file host_utils.cpp.

◆ cuda_prec

QudaPrecision& cuda_prec
extern

Definition at line 58 of file host_utils.cpp.

◆ cuda_prec_eigensolver

QudaPrecision& cuda_prec_eigensolver
extern

Definition at line 62 of file host_utils.cpp.

◆ cuda_prec_precondition

QudaPrecision& cuda_prec_precondition
extern

Definition at line 61 of file host_utils.cpp.

◆ cuda_prec_refinement_sloppy

QudaPrecision& cuda_prec_refinement_sloppy
extern

Definition at line 60 of file host_utils.cpp.

◆ cuda_prec_ritz

QudaPrecision& cuda_prec_ritz
extern

Definition at line 63 of file host_utils.cpp.

◆ cuda_prec_sloppy

QudaPrecision& cuda_prec_sloppy
extern

Definition at line 59 of file host_utils.cpp.

◆ E

int E[4]
extern

Definition at line 45 of file host_utils.cpp.

◆ E1

int E1
extern

Definition at line 44 of file host_utils.cpp.

◆ E1h

int E1h

Definition at line 21 of file host_utils.h.

◆ E2

int E2

Definition at line 21 of file host_utils.h.

◆ E3

int E3

Definition at line 21 of file host_utils.h.

◆ E4

int E4

Definition at line 21 of file host_utils.h.

◆ faceVolume

int faceVolume[4]
extern

Definition at line 41 of file host_utils.cpp.

◆ host_clover_data_type_size

size_t host_clover_data_type_size
extern

Definition at line 67 of file host_utils.cpp.

◆ host_gauge_data_type_size

size_t host_gauge_data_type_size
extern

Definition at line 65 of file host_utils.cpp.

◆ host_spinor_data_type_size

size_t host_spinor_data_type_size
extern

Definition at line 66 of file host_utils.cpp.

◆ kappa5

double kappa5
extern

Definition at line 51 of file host_utils.cpp.

◆ Ls

int Ls
extern

Definition at line 48 of file host_utils.cpp.

◆ V

int V
extern

Definition at line 37 of file host_utils.cpp.

◆ V5

int V5
extern

Definition at line 49 of file host_utils.cpp.

◆ V5h

int V5h
extern

Definition at line 50 of file host_utils.cpp.

◆ V_ex

int V_ex
extern

Definition at line 46 of file host_utils.cpp.

◆ Vh

int Vh
extern

Definition at line 38 of file host_utils.cpp.

◆ Vh_ex

int Vh_ex

Definition at line 23 of file host_utils.h.

◆ Vs_t

int Vs_t

Definition at line 18 of file host_utils.h.

◆ Vs_x

int Vs_x
extern

Definition at line 39 of file host_utils.cpp.

◆ Vs_y

int Vs_y

Definition at line 18 of file host_utils.h.

◆ Vs_z

int Vs_z

Definition at line 18 of file host_utils.h.

◆ Vsh_t

int Vsh_t

Definition at line 19 of file host_utils.h.

◆ Vsh_x

int Vsh_x
extern

Definition at line 40 of file host_utils.cpp.

◆ Vsh_y

int Vsh_y

Definition at line 19 of file host_utils.h.

◆ Vsh_z

int Vsh_z

Definition at line 19 of file host_utils.h.

◆ Z

int Z[4]
extern

Definition at line 36 of file host_utils.cpp.