QUDA v0.4.0
A library for QCD on GPUs
Defines | Functions | Variables
quda/tests/test_util.cpp File Reference
#include <complex>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <short.h>
#include <wilson_dslash_reference.h>
#include <test_util.h>
#include <face_quda.h>
#include "misc.h"

Go to the source code of this file.

Defines

#define XUP   0
#define YUP   1
#define ZUP   2
#define TUP   3

Functions

void printSpinorElement (void *spinor, int X, QudaPrecision precision)
void printGaugeElement (void *gauge, int X, QudaPrecision precision)
int getOddBit (int Y)
template<typename Float >
void complexAddTo (Float *a, Float *b)
template<typename Float >
void complexProduct (Float *a, Float *b, Float *c)
template<typename Float >
void complexConjugateProduct (Float *a, Float *b, Float *c)
template<typename Float >
void complexDotProduct (Float *a, Float *b, Float *c)
template<typename Float >
void accumulateComplexProduct (Float *a, Float *b, Float *c, Float sign)
template<typename Float >
void accumulateComplexDotProduct (Float *a, Float *b, Float *c)
template<typename Float >
void accumulateConjugateProduct (Float *a, Float *b, Float *c, int sign)
template<typename Float >
void su3Construct12 (Float *mat)
template<typename Float >
void su3Construct8 (Float *mat)
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)
int compare_floats (void *a, void *b, int len, double epsilon, QudaPrecision precision)
int fullLatticeIndex (int i, int oddBit)
int neighborIndex (int i, int oddBit, int dx4, int dx3, int dx2, int dx1)
int neighborIndex_mg (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 neighborIndexFullLattice_mg (int i, int dx4, int dx3, int dx2, int dx1)
int fullLatticeIndex_4d (int i, int oddBit)
int fullLatticeIndex_5d (int i, int oddBit)
int x4_from_full_index (int i)
template<typename Float >
void applyGaugeFieldScaling_long (Float **gauge, int Vh, QudaGaugeParam *param)
template<typename Float >
void constructUnitaryGaugeField (Float **res)
void construct_gauge_field (void **gauge, int type, QudaPrecision precision, QudaGaugeParam *param)
void construct_fat_long_gauge_field (void **fatlink, void **longlink, int type, QudaPrecision precision, QudaGaugeParam *param)
void construct_clover_field (void *clover, double norm, double diag, QudaPrecision precision)
void check_gauge (void **oldG, void **newG, double epsilon, QudaPrecision precision)
void createSiteLinkCPU (void **link, QudaPrecision precision, int phase)
template<typename Float >
int compareLink (Float **linkA, Float **linkB, int len)
int strong_check_link (void **linkA, const char *msgA, void **linkB, const char *msgB, int len, QudaPrecision prec)
void createMomCPU (void *mom, QudaPrecision precision)
void createHwCPU (void *hw, QudaPrecision precision)
template<typename Float >
int compare_mom (Float *momA, Float *momB, int len)
int strong_check_mom (void *momA, void *momB, int len, QudaPrecision prec)
void __attribute__ ((weak)) usage_extra(char **argv)
void usage (char **argv)
int process_command_line_option (int argc, char **argv, int *idx)

Variables

float fat_link_max
int device = 0
QudaReconstructType link_recon = QUDA_RECONSTRUCT_12
QudaReconstructType link_recon_sloppy = QUDA_RECONSTRUCT_INVALID
QudaPrecision prec = QUDA_SINGLE_PRECISION
QudaPrecision prec_sloppy = QUDA_INVALID_PRECISION
int xdim = 24
int ydim = 24
int zdim = 24
int tdim = 24
QudaDagType dagger = QUDA_DAG_NO
bool kernelPackT
int gridsize_from_cmdline [4] = {1,1,1,1}
QudaDslashType dslash_type = QUDA_WILSON_DSLASH
char latfile [256] = ""
bool tune = true

Define Documentation

#define TUP   3

Definition at line 17 of file test_util.cpp.

#define XUP   0

Definition at line 14 of file test_util.cpp.

#define YUP   1

Definition at line 15 of file test_util.cpp.

#define ZUP   2

Definition at line 16 of file test_util.cpp.


Function Documentation

void __attribute__ ( (weak)  )

Definition at line 1322 of file test_util.cpp.

template<typename Float >
void accumulateComplexDotProduct ( Float *  a,
Float *  b,
Float *  c 
) [inline]

Definition at line 97 of file test_util.cpp.

template<typename Float >
void accumulateComplexProduct ( Float *  a,
Float *  b,
Float *  c,
Float  sign 
) [inline]

Definition at line 90 of file test_util.cpp.

template<typename Float >
void accumulateConjugateProduct ( Float *  a,
Float *  b,
Float *  c,
int  sign 
) [inline]

Definition at line 103 of file test_util.cpp.

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

Definition at line 530 of file test_util.cpp.

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

Definition at line 921 of file test_util.cpp.

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

Definition at line 261 of file test_util.cpp.

template<typename Float >
int compare_mom ( Float *  momA,
Float *  momB,
int  len 
)

Definition at line 1212 of file test_util.cpp.

template<typename Float >
int compareLink ( Float **  linkA,
Float **  linkB,
int  len 
)

Definition at line 1054 of file test_util.cpp.

template<typename Float >
void complexAddTo ( Float *  a,
Float *  b 
) [inline]

Definition at line 62 of file test_util.cpp.

template<typename Float >
void complexConjugateProduct ( Float *  a,
Float *  b,
Float *  c 
) [inline]

Definition at line 76 of file test_util.cpp.

template<typename Float >
void complexDotProduct ( Float *  a,
Float *  b,
Float *  c 
) [inline]

Definition at line 83 of file test_util.cpp.

template<typename Float >
void complexProduct ( Float *  a,
Float *  b,
Float *  c 
) [inline]

Definition at line 69 of file test_util.cpp.

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

Definition at line 868 of file test_util.cpp.

void construct_fat_long_gauge_field ( void **  fatlink,
void **  longlink,
int  type,
QudaPrecision  precision,
QudaGaugeParam param 
)

Definition at line 825 of file test_util.cpp.

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

Definition at line 810 of file test_util.cpp.

template<typename Float >
void constructUnitaryGaugeField ( Float **  res)

Definition at line 751 of file test_util.cpp.

void createHwCPU ( void *  hw,
QudaPrecision  precision 
)

Definition at line 1187 of file test_util.cpp.

void createMomCPU ( void *  mom,
QudaPrecision  precision 
)

Definition at line 1149 of file test_util.cpp.

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

Definition at line 931 of file test_util.cpp.

int fullLatticeIndex ( int  i,
int  oddBit 
)

Definition at line 270 of file test_util.cpp.

int fullLatticeIndex_4d ( int  i,
int  oddBit 
)

Definition at line 432 of file test_util.cpp.

int fullLatticeIndex_5d ( int  i,
int  oddBit 
)

Definition at line 466 of file test_util.cpp.

int getOddBit ( int  Y)

Definition at line 52 of file test_util.cpp.

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

Definition at line 307 of file test_util.cpp.

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

Definition at line 325 of file test_util.cpp.

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

Definition at line 361 of file test_util.cpp.

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

Definition at line 385 of file test_util.cpp.

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

Definition at line 36 of file test_util.cpp.

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

Definition at line 28 of file test_util.cpp.

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

Definition at line 1363 of file test_util.cpp.

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

Definition at line 1123 of file test_util.cpp.

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

Definition at line 1260 of file test_util.cpp.

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

Definition at line 127 of file test_util.cpp.

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

Definition at line 217 of file test_util.cpp.

template<typename Float >
void su3Construct12 ( Float *  mat) [inline]

Definition at line 109 of file test_util.cpp.

template<typename Float >
void su3Construct8 ( Float *  mat) [inline]

Definition at line 121 of file test_util.cpp.

void usage ( char **  argv)

Definition at line 1324 of file test_util.cpp.

int x4_from_full_index ( int  i)

Definition at line 472 of file test_util.cpp.


Variable Documentation

QudaDagType dagger = QUDA_DAG_NO

Definition at line 1315 of file test_util.cpp.

int device = 0

Definition at line 1304 of file test_util.cpp.

QudaDslashType dslash_type = QUDA_WILSON_DSLASH

Definition at line 1318 of file test_util.cpp.

float fat_link_max
int gridsize_from_cmdline[4] = {1,1,1,1}

Definition at line 1317 of file test_util.cpp.

Definition at line 61 of file dslash_quda.cu.

char latfile[256] = ""

Definition at line 1319 of file test_util.cpp.

QudaReconstructType link_recon = QUDA_RECONSTRUCT_12

Definition at line 1307 of file test_util.cpp.

QudaReconstructType link_recon_sloppy = QUDA_RECONSTRUCT_INVALID

Definition at line 1308 of file test_util.cpp.

QudaPrecision prec = QUDA_SINGLE_PRECISION

Definition at line 1309 of file test_util.cpp.

QudaPrecision prec_sloppy = QUDA_INVALID_PRECISION

Definition at line 1310 of file test_util.cpp.

int tdim = 24

Definition at line 1314 of file test_util.cpp.

bool tune = true

Definition at line 1320 of file test_util.cpp.

int xdim = 24

Definition at line 1311 of file test_util.cpp.

int ydim = 24

Definition at line 1312 of file test_util.cpp.

int zdim = 24

Definition at line 1313 of file test_util.cpp.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines