QUDA  v0.7.0
A library for QCD on GPUs
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Macros | Functions | Variables
blas_test.cu File Reference
#include <stdio.h>
#include <stdlib.h>
#include <quda_internal.h>
#include <color_spinor_field.h>
#include <blas_quda.h>
#include <test_util.h>
#include <face_quda.h>
#include <dslash_util.h>
#include <gtest.h>

Go to the source code of this file.

Classes

class  BlasTest
 

Macros

#define ERROR(a)   fabs(norm2(*a##D) - norm2(*a##H)) / norm2(*a##H)
 

Functions

void usage (char **)
 
void setPrec (ColorSpinorParam &param, const QudaPrecision precision)
 
void display_test_info ()
 
void initFields (int prec)
 
void freeFields ()
 
double benchmark (int kernel, const int niter)
 
double test (int kernel)
 
int main (int argc, char **argv)
 
 TEST_P (BlasTest, verify)
 
 INSTANTIATE_TEST_CASE_P (copyHS_half, BlasTest,::testing::Values(make_int2(0, 0)))
 
 INSTANTIATE_TEST_CASE_P (copyLS_half, BlasTest,::testing::Values(make_int2(0, 1)))
 
 INSTANTIATE_TEST_CASE_P (axpby_half, BlasTest,::testing::Values(make_int2(0, 2)))
 
 INSTANTIATE_TEST_CASE_P (xpy_half, BlasTest,::testing::Values(make_int2(0, 3)))
 
 INSTANTIATE_TEST_CASE_P (axpy_half, BlasTest,::testing::Values(make_int2(0, 4)))
 
 INSTANTIATE_TEST_CASE_P (xpay_half, BlasTest,::testing::Values(make_int2(0, 5)))
 
 INSTANTIATE_TEST_CASE_P (mxpy_half, BlasTest,::testing::Values(make_int2(0, 6)))
 
 INSTANTIATE_TEST_CASE_P (ax_half, BlasTest,::testing::Values(make_int2(0, 7)))
 
 INSTANTIATE_TEST_CASE_P (caxpy_half, BlasTest,::testing::Values(make_int2(0, 8)))
 
 INSTANTIATE_TEST_CASE_P (caxpby_half, BlasTest,::testing::Values(make_int2(0, 9)))
 
 INSTANTIATE_TEST_CASE_P (cxpaypbz_half, BlasTest,::testing::Values(make_int2(0, 10)))
 
 INSTANTIATE_TEST_CASE_P (axpyBzpcx_half, BlasTest,::testing::Values(make_int2(0, 11)))
 
 INSTANTIATE_TEST_CASE_P (axpyZpbx_half, BlasTest,::testing::Values(make_int2(0, 12)))
 
 INSTANTIATE_TEST_CASE_P (caxpbypzYmbw_half, BlasTest,::testing::Values(make_int2(0, 13)))
 
 INSTANTIATE_TEST_CASE_P (cabxpyAx_half, BlasTest,::testing::Values(make_int2(0, 14)))
 
 INSTANTIATE_TEST_CASE_P (caxpbypz_half, BlasTest,::testing::Values(make_int2(0, 15)))
 
 INSTANTIATE_TEST_CASE_P (caxpbypczpw_half, BlasTest,::testing::Values(make_int2(0, 16)))
 
 INSTANTIATE_TEST_CASE_P (caxpyXmaz_half, BlasTest,::testing::Values(make_int2(0, 17)))
 
 INSTANTIATE_TEST_CASE_P (norm2_half, BlasTest,::testing::Values(make_int2(0, 18)))
 
 INSTANTIATE_TEST_CASE_P (reDotProduct_half, BlasTest,::testing::Values(make_int2(0, 19)))
 
 INSTANTIATE_TEST_CASE_P (axpyNorm_half, BlasTest,::testing::Values(make_int2(0, 20)))
 
 INSTANTIATE_TEST_CASE_P (xmyNorm_half, BlasTest,::testing::Values(make_int2(0, 21)))
 
 INSTANTIATE_TEST_CASE_P (caxpyNorm_half, BlasTest,::testing::Values(make_int2(0, 22)))
 
 INSTANTIATE_TEST_CASE_P (caxpyXmazNormX_half, BlasTest,::testing::Values(make_int2(0, 23)))
 
 INSTANTIATE_TEST_CASE_P (cabxpyAxNorm_half, BlasTest,::testing::Values(make_int2(0, 24)))
 
 INSTANTIATE_TEST_CASE_P (cDotProduct_half, BlasTest,::testing::Values(make_int2(0, 25)))
 
 INSTANTIATE_TEST_CASE_P (xpaycDotzy_half, BlasTest,::testing::Values(make_int2(0, 26)))
 
 INSTANTIATE_TEST_CASE_P (caxpyDotzy_half, BlasTest,::testing::Values(make_int2(0, 27)))
 
 INSTANTIATE_TEST_CASE_P (cDotProductNormA_half, BlasTest,::testing::Values(make_int2(0, 28)))
 
 INSTANTIATE_TEST_CASE_P (cDotProductNormB_half, BlasTest,::testing::Values(make_int2(0, 29)))
 
 INSTANTIATE_TEST_CASE_P (caxpbypzYmbwcDotProductWYNormY_half, BlasTest,::testing::Values(make_int2(0, 30)))
 
 INSTANTIATE_TEST_CASE_P (HeavyQuarkResidualNorm_half, BlasTest,::testing::Values(make_int2(0, 31)))
 
 INSTANTIATE_TEST_CASE_P (copyHS_single, BlasTest,::testing::Values(make_int2(1, 0)))
 
 INSTANTIATE_TEST_CASE_P (copyLS_single, BlasTest,::testing::Values(make_int2(1, 1)))
 
 INSTANTIATE_TEST_CASE_P (axpby_single, BlasTest,::testing::Values(make_int2(1, 2)))
 
 INSTANTIATE_TEST_CASE_P (xpy_single, BlasTest,::testing::Values(make_int2(1, 3)))
 
 INSTANTIATE_TEST_CASE_P (axpy_single, BlasTest,::testing::Values(make_int2(1, 4)))
 
 INSTANTIATE_TEST_CASE_P (xpay_single, BlasTest,::testing::Values(make_int2(1, 5)))
 
 INSTANTIATE_TEST_CASE_P (mxpy_single, BlasTest,::testing::Values(make_int2(1, 6)))
 
 INSTANTIATE_TEST_CASE_P (ax_single, BlasTest,::testing::Values(make_int2(1, 7)))
 
 INSTANTIATE_TEST_CASE_P (caxpy_single, BlasTest,::testing::Values(make_int2(1, 8)))
 
 INSTANTIATE_TEST_CASE_P (caxpby_single, BlasTest,::testing::Values(make_int2(1, 9)))
 
 INSTANTIATE_TEST_CASE_P (cxpaypbz_single, BlasTest,::testing::Values(make_int2(1, 10)))
 
 INSTANTIATE_TEST_CASE_P (axpyBzpcx_single, BlasTest,::testing::Values(make_int2(1, 11)))
 
 INSTANTIATE_TEST_CASE_P (axpyZpbx_single, BlasTest,::testing::Values(make_int2(1, 12)))
 
 INSTANTIATE_TEST_CASE_P (caxpbypzYmbw_single, BlasTest,::testing::Values(make_int2(1, 13)))
 
 INSTANTIATE_TEST_CASE_P (cabxpyAx_single, BlasTest,::testing::Values(make_int2(1, 14)))
 
 INSTANTIATE_TEST_CASE_P (caxpbypz_single, BlasTest,::testing::Values(make_int2(1, 15)))
 
 INSTANTIATE_TEST_CASE_P (caxpbypczpw_single, BlasTest,::testing::Values(make_int2(1, 16)))
 
 INSTANTIATE_TEST_CASE_P (caxpyXmaz_single, BlasTest,::testing::Values(make_int2(1, 17)))
 
 INSTANTIATE_TEST_CASE_P (norm2_single, BlasTest,::testing::Values(make_int2(1, 18)))
 
 INSTANTIATE_TEST_CASE_P (reDotProduct_single, BlasTest,::testing::Values(make_int2(1, 19)))
 
 INSTANTIATE_TEST_CASE_P (axpyNorm_single, BlasTest,::testing::Values(make_int2(1, 20)))
 
 INSTANTIATE_TEST_CASE_P (xmyNorm_single, BlasTest,::testing::Values(make_int2(1, 21)))
 
 INSTANTIATE_TEST_CASE_P (caxpyNorm_single, BlasTest,::testing::Values(make_int2(1, 22)))
 
 INSTANTIATE_TEST_CASE_P (caxpyXmazNormX_single, BlasTest,::testing::Values(make_int2(1, 23)))
 
 INSTANTIATE_TEST_CASE_P (cabxpyAxNorm_single, BlasTest,::testing::Values(make_int2(1, 24)))
 
 INSTANTIATE_TEST_CASE_P (cDotProduct_single, BlasTest,::testing::Values(make_int2(1, 25)))
 
 INSTANTIATE_TEST_CASE_P (xpaycDotzy_single, BlasTest,::testing::Values(make_int2(1, 26)))
 
 INSTANTIATE_TEST_CASE_P (caxpyDotzy_single, BlasTest,::testing::Values(make_int2(1, 27)))
 
 INSTANTIATE_TEST_CASE_P (cDotProductNormA_single, BlasTest,::testing::Values(make_int2(1, 28)))
 
 INSTANTIATE_TEST_CASE_P (cDotProductNormB_single, BlasTest,::testing::Values(make_int2(1, 29)))
 
 INSTANTIATE_TEST_CASE_P (caxpbypzYmbwcDotProductWYNormY_single, BlasTest,::testing::Values(make_int2(1, 30)))
 
 INSTANTIATE_TEST_CASE_P (HeavyQuarkResidualNorm_single, BlasTest,::testing::Values(make_int2(1, 31)))
 
 INSTANTIATE_TEST_CASE_P (copyHS_double, BlasTest,::testing::Values(make_int2(2, 0)))
 
 INSTANTIATE_TEST_CASE_P (copyLS_double, BlasTest,::testing::Values(make_int2(2, 1)))
 
 INSTANTIATE_TEST_CASE_P (axpby_double, BlasTest,::testing::Values(make_int2(2, 2)))
 
 INSTANTIATE_TEST_CASE_P (xpy_double, BlasTest,::testing::Values(make_int2(2, 3)))
 
 INSTANTIATE_TEST_CASE_P (axpy_double, BlasTest,::testing::Values(make_int2(2, 4)))
 
 INSTANTIATE_TEST_CASE_P (xpay_double, BlasTest,::testing::Values(make_int2(2, 5)))
 
 INSTANTIATE_TEST_CASE_P (mxpy_double, BlasTest,::testing::Values(make_int2(2, 6)))
 
 INSTANTIATE_TEST_CASE_P (ax_double, BlasTest,::testing::Values(make_int2(2, 7)))
 
 INSTANTIATE_TEST_CASE_P (caxpy_double, BlasTest,::testing::Values(make_int2(2, 8)))
 
 INSTANTIATE_TEST_CASE_P (caxpby_double, BlasTest,::testing::Values(make_int2(2, 9)))
 
 INSTANTIATE_TEST_CASE_P (cxpaypbz_double, BlasTest,::testing::Values(make_int2(2, 10)))
 
 INSTANTIATE_TEST_CASE_P (axpyBzpcx_double, BlasTest,::testing::Values(make_int2(2, 11)))
 
 INSTANTIATE_TEST_CASE_P (axpyZpbx_double, BlasTest,::testing::Values(make_int2(2, 12)))
 
 INSTANTIATE_TEST_CASE_P (caxpbypzYmbw_double, BlasTest,::testing::Values(make_int2(2, 13)))
 
 INSTANTIATE_TEST_CASE_P (cabxpyAx_double, BlasTest,::testing::Values(make_int2(2, 14)))
 
 INSTANTIATE_TEST_CASE_P (caxpbypz_double, BlasTest,::testing::Values(make_int2(2, 15)))
 
 INSTANTIATE_TEST_CASE_P (caxpbypczpw_double, BlasTest,::testing::Values(make_int2(2, 16)))
 
 INSTANTIATE_TEST_CASE_P (caxpyXmaz_double, BlasTest,::testing::Values(make_int2(2, 17)))
 
 INSTANTIATE_TEST_CASE_P (norm2_double, BlasTest,::testing::Values(make_int2(2, 18)))
 
 INSTANTIATE_TEST_CASE_P (reDotProduct_double, BlasTest,::testing::Values(make_int2(2, 19)))
 
 INSTANTIATE_TEST_CASE_P (axpyNorm_double, BlasTest,::testing::Values(make_int2(2, 20)))
 
 INSTANTIATE_TEST_CASE_P (xmyNorm_double, BlasTest,::testing::Values(make_int2(2, 21)))
 
 INSTANTIATE_TEST_CASE_P (caxpyNorm_double, BlasTest,::testing::Values(make_int2(2, 22)))
 
 INSTANTIATE_TEST_CASE_P (caxpyXmazNormX_double, BlasTest,::testing::Values(make_int2(2, 23)))
 
 INSTANTIATE_TEST_CASE_P (cabxpyAxNorm_double, BlasTest,::testing::Values(make_int2(2, 24)))
 
 INSTANTIATE_TEST_CASE_P (cDotProduct_double, BlasTest,::testing::Values(make_int2(2, 25)))
 
 INSTANTIATE_TEST_CASE_P (xpaycDotzy_double, BlasTest,::testing::Values(make_int2(2, 26)))
 
 INSTANTIATE_TEST_CASE_P (caxpyDotzy_double, BlasTest,::testing::Values(make_int2(2, 27)))
 
 INSTANTIATE_TEST_CASE_P (cDotProductNormA_double, BlasTest,::testing::Values(make_int2(2, 28)))
 
 INSTANTIATE_TEST_CASE_P (cDotProductNormB_double, BlasTest,::testing::Values(make_int2(2, 29)))
 
 INSTANTIATE_TEST_CASE_P (caxpbypzYmbwcDotProductWYNormY_double, BlasTest,::testing::Values(make_int2(2, 30)))
 
 INSTANTIATE_TEST_CASE_P (HeavyQuarkResidualNorm_double, BlasTest,::testing::Values(make_int2(2, 31)))
 

Variables

QudaDslashType dslash_type
 
bool tune
 
int device
 
int xdim
 
int ydim
 
int zdim
 
int tdim
 
int gridsize_from_cmdline []
 
int niter
 
bool verify_results
 
const int Nkernels = 31
 
cpuColorSpinorFieldxH
 
cpuColorSpinorFieldyH
 
cpuColorSpinorFieldzH
 
cpuColorSpinorFieldwH
 
cpuColorSpinorFieldvH
 
cpuColorSpinorFieldhH
 
cpuColorSpinorFieldlH
 
cudaColorSpinorFieldxD
 
cudaColorSpinorFieldyD
 
cudaColorSpinorFieldzD
 
cudaColorSpinorFieldwD
 
cudaColorSpinorFieldvD
 
cudaColorSpinorFieldhD
 
cudaColorSpinorFieldlD
 
int Nspin
 
int Nprec = 2
 
const char * prec_str [] = {"half", "single", "double"}
 
const char * names []
 

Macro Definition Documentation

#define ERROR (   a)    fabs(norm2(*a##D) - norm2(*a##H)) / norm2(*a##H)

Definition at line 352 of file blas_test.cu.

Function Documentation

double benchmark ( int  kernel,
const int  niter 
)

Definition at line 192 of file blas_test.cu.

void display_test_info ( )

Definition at line 56 of file blas_test.cu.

void freeFields ( )

Definition at line 169 of file blas_test.cu.

void initFields ( int  prec)

Definition at line 73 of file blas_test.cu.

INSTANTIATE_TEST_CASE_P ( copyHS_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 0) 
)
INSTANTIATE_TEST_CASE_P ( copyLS_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 1) 
)
INSTANTIATE_TEST_CASE_P ( axpby_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 2) 
)
INSTANTIATE_TEST_CASE_P ( xpy_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 3) 
)
INSTANTIATE_TEST_CASE_P ( axpy_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 4) 
)
INSTANTIATE_TEST_CASE_P ( xpay_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 5) 
)
INSTANTIATE_TEST_CASE_P ( mxpy_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 6) 
)
INSTANTIATE_TEST_CASE_P ( ax_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 7) 
)
INSTANTIATE_TEST_CASE_P ( caxpy_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 8) 
)
INSTANTIATE_TEST_CASE_P ( caxpby_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 9) 
)
INSTANTIATE_TEST_CASE_P ( cxpaypbz_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 10) 
)
INSTANTIATE_TEST_CASE_P ( axpyBzpcx_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 11) 
)
INSTANTIATE_TEST_CASE_P ( axpyZpbx_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 12) 
)
INSTANTIATE_TEST_CASE_P ( caxpbypzYmbw_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 13) 
)
INSTANTIATE_TEST_CASE_P ( cabxpyAx_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 14) 
)
INSTANTIATE_TEST_CASE_P ( caxpbypz_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 15) 
)
INSTANTIATE_TEST_CASE_P ( caxpbypczpw_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 16) 
)
INSTANTIATE_TEST_CASE_P ( caxpyXmaz_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 17) 
)
INSTANTIATE_TEST_CASE_P ( norm2_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 18) 
)
INSTANTIATE_TEST_CASE_P ( reDotProduct_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 19) 
)
INSTANTIATE_TEST_CASE_P ( axpyNorm_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 20) 
)
INSTANTIATE_TEST_CASE_P ( xmyNorm_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 21) 
)
INSTANTIATE_TEST_CASE_P ( caxpyNorm_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 22) 
)
INSTANTIATE_TEST_CASE_P ( caxpyXmazNormX_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 23) 
)
INSTANTIATE_TEST_CASE_P ( cabxpyAxNorm_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 24) 
)
INSTANTIATE_TEST_CASE_P ( cDotProduct_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 25) 
)
INSTANTIATE_TEST_CASE_P ( xpaycDotzy_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 26) 
)
INSTANTIATE_TEST_CASE_P ( caxpyDotzy_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 27) 
)
INSTANTIATE_TEST_CASE_P ( cDotProductNormA_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 28) 
)
INSTANTIATE_TEST_CASE_P ( cDotProductNormB_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 29) 
)
INSTANTIATE_TEST_CASE_P ( caxpbypzYmbwcDotProductWYNormY_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 30) 
)
INSTANTIATE_TEST_CASE_P ( HeavyQuarkResidualNorm_half  ,
BlasTest  ,
::testing::  Valuesmake_int2(0, 31) 
)
INSTANTIATE_TEST_CASE_P ( copyHS_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 0) 
)
INSTANTIATE_TEST_CASE_P ( copyLS_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 1) 
)
INSTANTIATE_TEST_CASE_P ( axpby_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 2) 
)
INSTANTIATE_TEST_CASE_P ( xpy_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 3) 
)
INSTANTIATE_TEST_CASE_P ( axpy_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 4) 
)
INSTANTIATE_TEST_CASE_P ( xpay_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 5) 
)
INSTANTIATE_TEST_CASE_P ( mxpy_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 6) 
)
INSTANTIATE_TEST_CASE_P ( ax_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 7) 
)
INSTANTIATE_TEST_CASE_P ( caxpy_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 8) 
)
INSTANTIATE_TEST_CASE_P ( caxpby_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 9) 
)
INSTANTIATE_TEST_CASE_P ( cxpaypbz_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 10) 
)
INSTANTIATE_TEST_CASE_P ( axpyBzpcx_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 11) 
)
INSTANTIATE_TEST_CASE_P ( axpyZpbx_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 12) 
)
INSTANTIATE_TEST_CASE_P ( caxpbypzYmbw_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 13) 
)
INSTANTIATE_TEST_CASE_P ( cabxpyAx_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 14) 
)
INSTANTIATE_TEST_CASE_P ( caxpbypz_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 15) 
)
INSTANTIATE_TEST_CASE_P ( caxpbypczpw_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 16) 
)
INSTANTIATE_TEST_CASE_P ( caxpyXmaz_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 17) 
)
INSTANTIATE_TEST_CASE_P ( norm2_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 18) 
)
INSTANTIATE_TEST_CASE_P ( reDotProduct_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 19) 
)
INSTANTIATE_TEST_CASE_P ( axpyNorm_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 20) 
)
INSTANTIATE_TEST_CASE_P ( xmyNorm_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 21) 
)
INSTANTIATE_TEST_CASE_P ( caxpyNorm_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 22) 
)
INSTANTIATE_TEST_CASE_P ( caxpyXmazNormX_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 23) 
)
INSTANTIATE_TEST_CASE_P ( cabxpyAxNorm_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 24) 
)
INSTANTIATE_TEST_CASE_P ( cDotProduct_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 25) 
)
INSTANTIATE_TEST_CASE_P ( xpaycDotzy_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 26) 
)
INSTANTIATE_TEST_CASE_P ( caxpyDotzy_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 27) 
)
INSTANTIATE_TEST_CASE_P ( cDotProductNormA_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 28) 
)
INSTANTIATE_TEST_CASE_P ( cDotProductNormB_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 29) 
)
INSTANTIATE_TEST_CASE_P ( caxpbypzYmbwcDotProductWYNormY_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 30) 
)
INSTANTIATE_TEST_CASE_P ( HeavyQuarkResidualNorm_single  ,
BlasTest  ,
::testing::  Valuesmake_int2(1, 31) 
)
INSTANTIATE_TEST_CASE_P ( copyHS_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 0) 
)
INSTANTIATE_TEST_CASE_P ( copyLS_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 1) 
)
INSTANTIATE_TEST_CASE_P ( axpby_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 2) 
)
INSTANTIATE_TEST_CASE_P ( xpy_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 3) 
)
INSTANTIATE_TEST_CASE_P ( axpy_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 4) 
)
INSTANTIATE_TEST_CASE_P ( xpay_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 5) 
)
INSTANTIATE_TEST_CASE_P ( mxpy_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 6) 
)
INSTANTIATE_TEST_CASE_P ( ax_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 7) 
)
INSTANTIATE_TEST_CASE_P ( caxpy_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 8) 
)
INSTANTIATE_TEST_CASE_P ( caxpby_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 9) 
)
INSTANTIATE_TEST_CASE_P ( cxpaypbz_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 10) 
)
INSTANTIATE_TEST_CASE_P ( axpyBzpcx_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 11) 
)
INSTANTIATE_TEST_CASE_P ( axpyZpbx_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 12) 
)
INSTANTIATE_TEST_CASE_P ( caxpbypzYmbw_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 13) 
)
INSTANTIATE_TEST_CASE_P ( cabxpyAx_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 14) 
)
INSTANTIATE_TEST_CASE_P ( caxpbypz_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 15) 
)
INSTANTIATE_TEST_CASE_P ( caxpbypczpw_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 16) 
)
INSTANTIATE_TEST_CASE_P ( caxpyXmaz_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 17) 
)
INSTANTIATE_TEST_CASE_P ( norm2_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 18) 
)
INSTANTIATE_TEST_CASE_P ( reDotProduct_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 19) 
)
INSTANTIATE_TEST_CASE_P ( axpyNorm_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 20) 
)
INSTANTIATE_TEST_CASE_P ( xmyNorm_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 21) 
)
INSTANTIATE_TEST_CASE_P ( caxpyNorm_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 22) 
)
INSTANTIATE_TEST_CASE_P ( caxpyXmazNormX_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 23) 
)
INSTANTIATE_TEST_CASE_P ( cabxpyAxNorm_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 24) 
)
INSTANTIATE_TEST_CASE_P ( cDotProduct_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 25) 
)
INSTANTIATE_TEST_CASE_P ( xpaycDotzy_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 26) 
)
INSTANTIATE_TEST_CASE_P ( caxpyDotzy_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 27) 
)
INSTANTIATE_TEST_CASE_P ( cDotProductNormA_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 28) 
)
INSTANTIATE_TEST_CASE_P ( cDotProductNormB_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 29) 
)
INSTANTIATE_TEST_CASE_P ( caxpbypzYmbwcDotProductWYNormY_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 30) 
)
INSTANTIATE_TEST_CASE_P ( HeavyQuarkResidualNorm_double  ,
BlasTest  ,
::testing::  Valuesmake_int2(2, 31) 
)
int main ( int  argc,
char **  argv 
)

Definition at line 680 of file blas_test.cu.

void setPrec ( ColorSpinorParam param,
const QudaPrecision  precision 
)

Definition at line 45 of file blas_test.cu.

double test ( int  kernel)

Definition at line 354 of file blas_test.cu.

TEST_P ( BlasTest  ,
verify   
)

Definition at line 757 of file blas_test.cu.

void usage ( char **  )

Definition at line 1584 of file test_util.cpp.

Variable Documentation

int device

Definition at line 1546 of file test_util.cpp.

QudaDslashType dslash_type

Definition at line 1560 of file test_util.cpp.

int gridsize_from_cmdline[]

Definition at line 1559 of file test_util.cpp.

Definition at line 42 of file blas_test.cu.

Definition at line 41 of file blas_test.cu.

Definition at line 42 of file blas_test.cu.

Definition at line 41 of file blas_test.cu.

const char* names[]

Definition at line 645 of file blas_test.cu.

int niter

Definition at line 1563 of file test_util.cpp.

const int Nkernels = 31

Definition at line 36 of file blas_test.cu.

int Nprec = 2

Definition at line 640 of file blas_test.cu.

int Nspin

Definition at line 43 of file blas_test.cu.

const char* prec_str[] = {"half", "single", "double"}

Definition at line 643 of file blas_test.cu.

int tdim

Definition at line 29 of file gauge_force_test.cpp.

bool tune

Definition at line 28 of file blas_test.cu.

Definition at line 42 of file blas_test.cu.

bool verify_results

Definition at line 1568 of file test_util.cpp.

Definition at line 41 of file blas_test.cu.

Definition at line 42 of file blas_test.cu.

Definition at line 41 of file blas_test.cu.

Definition at line 42 of file blas_test.cu.

int xdim

Definition at line 1553 of file test_util.cpp.

Definition at line 41 of file blas_test.cu.

Definition at line 42 of file blas_test.cu.

int ydim

Definition at line 1554 of file test_util.cpp.

Definition at line 41 of file blas_test.cu.

Definition at line 42 of file blas_test.cu.

int zdim

Definition at line 1555 of file test_util.cpp.

Definition at line 41 of file blas_test.cu.