|
| DslashCuda (cudaColorSpinorField *out, const cudaColorSpinorField *in, const cudaColorSpinorField *x, const GaugeField &gauge, const int parity, const int dagger, const int *commOverride) |
|
virtual | ~DslashCuda () |
|
virtual TuneKey | tuneKey () const |
|
const char * | getAux (KernelType type) const |
|
void | setAux (KernelType type, const char *aux_) |
|
void | augmentAux (KernelType type, const char *extra) |
|
virtual int | Nface () const |
|
int | Dagger () const |
|
virtual void | preTune () |
|
virtual void | postTune () |
|
virtual long long | flops () const |
|
virtual long long | bytes () const |
|
|
unsigned int | sharedBytesPerBlock (const TuneParam ¶m) const |
|
bool | tuneGridDim () const |
|
bool | tuneAuxDim () const |
|
unsigned int | minThreads () const |
|
void | fillAuxBase () |
| Set the base strings used by the different dslash kernel types for autotuning. More...
|
|
void | fillAux (KernelType kernel_type, const char *kernel_str) |
| Specialize the auxiliary strings for each kernel type. More...
|
|
void | setParam () |
| Set the dslashParam for the current multi-GPU parameters (set these at the last minute to ensure we always use the correct ones while policy autotuning). More...
|
|
Definition at line 381 of file dslash_quda.cuh.
◆ DslashCuda()
DslashCuda::DslashCuda |
( |
cudaColorSpinorField * |
out, |
|
|
const cudaColorSpinorField * |
in, |
|
|
const cudaColorSpinorField * |
x, |
|
|
const GaugeField & |
gauge, |
|
|
const int |
parity, |
|
|
const int |
dagger, |
|
|
const int * |
commOverride |
|
) |
| |
|
inline |
Definition at line 477 of file dslash_quda.cuh.
References DslashParam::An2, DslashParam::anisotropy, DslashParam::anisotropy_f, DslashParam::coeff, DslashParam::coeff_f, comm_coord(), comm_dim(), comm_dim_partitioned(), DslashParam::commDim, DslashParam::dc, errorQuda, quda::EXTERIOR_KERNEL_ALL, quda::EXTERIOR_KERNEL_T, quda::EXTERIOR_KERNEL_X, quda::EXTERIOR_KERNEL_Y, quda::EXTERIOR_KERNEL_Z, fillAux(), fillAuxBase(), DslashParam::gauge_fixed, DslashParam::gauge_stride, DslashParam::ghostDim, DslashParam::ghostNormOffset, DslashParam::ghostOffset, DslashParam::in, DslashParam::inNorm, quda::INTERIOR_KERNEL, quda::KERNEL_POLICY, DslashParam::No2, DslashParam::out, DslashParam::outNorm, DslashParam::parity, parity, DslashParam::Pt0, DslashParam::PtNm1, QUDA_PERIODIC_T, quda::setPackComms(), DslashParam::sp_stride, DslashParam::t_boundary, DslashParam::t_boundary_f, DslashParam::TB2, DslashParam::twist_a, DslashParam::twist_b, DslashParam::x, and DslashParam::xNorm.
Referenced by bytes().
◆ ~DslashCuda()
virtual DslashCuda::~DslashCuda |
( |
| ) |
|
|
inlinevirtual |
◆ augmentAux()
void DslashCuda::augmentAux |
( |
KernelType |
type, |
|
|
const char * |
extra |
|
) |
| |
|
inline |
◆ bytes()
virtual long long DslashCuda::bytes |
( |
| ) |
const |
|
inlinevirtual |
Definition at line 710 of file dslash_quda.cuh.
References DslashParam::commDim, dagger, DslashCuda(), dslashParam, quda::EXTERIOR_KERNEL_ALL, quda::EXTERIOR_KERNEL_T, quda::EXTERIOR_KERNEL_X, quda::EXTERIOR_KERNEL_Y, quda::EXTERIOR_KERNEL_Z, gauge, ghost_str, in, init, quda::INTERIOR_KERNEL, quda::KERNEL_POLICY, DslashParam::kernel_type, out, param, parity, sharedBytesPerBlock(), X, and x.
◆ Dagger()
int DslashCuda::Dagger |
( |
| ) |
const |
|
inline |
◆ fillAux()
void DslashCuda::fillAux |
( |
KernelType |
kernel_type, |
|
|
const char * |
kernel_str |
|
) |
| |
|
inlineprotected |
Specialize the auxiliary strings for each kernel type.
- Parameters
-
[in] | kernel_type | The kernel_type we are generating the string got |
[in] | kernel_str | String corresponding to the kernel type |
Definition at line 434 of file dslash_quda.cuh.
References quda::INTERIOR_KERNEL.
Referenced by DslashCuda().
◆ fillAuxBase()
void DslashCuda::fillAuxBase |
( |
| ) |
|
|
inlineprotected |
◆ flops()
virtual long long DslashCuda::flops |
( |
| ) |
const |
|
inlinevirtual |
◆ getAux()
const char* DslashCuda::getAux |
( |
KernelType |
type | ) |
const |
|
inline |
◆ minThreads()
unsigned int DslashCuda::minThreads |
( |
| ) |
const |
|
inlineprotected |
◆ Nface()
virtual int DslashCuda::Nface |
( |
| ) |
const |
|
inlinevirtual |
◆ postTune()
virtual void DslashCuda::postTune |
( |
| ) |
|
|
inlinevirtual |
◆ preTune()
virtual void DslashCuda::preTune |
( |
| ) |
|
|
inlinevirtual |
◆ setAux()
void DslashCuda::setAux |
( |
KernelType |
type, |
|
|
const char * |
aux_ |
|
) |
| |
|
inline |
◆ setParam()
void DslashCuda::setParam |
( |
| ) |
|
|
inlineprotected |
◆ sharedBytesPerBlock()
unsigned int DslashCuda::sharedBytesPerBlock |
( |
const TuneParam & |
param | ) |
const |
|
inlineprotected |
◆ tuneAuxDim()
bool DslashCuda::tuneAuxDim |
( |
| ) |
const |
|
inlineprotected |
◆ tuneGridDim()
bool DslashCuda::tuneGridDim |
( |
| ) |
const |
|
inlineprotected |
◆ tuneKey()
virtual TuneKey DslashCuda::tuneKey |
( |
| ) |
const |
|
inlinevirtual |
◆ aux
char DslashCuda::aux[8][TuneKey::aux_n] |
|
protected |
◆ aux_base
char DslashCuda::aux_base[TuneKey::aux_n] |
|
protected |
◆ dagger
const int DslashCuda::dagger |
|
protected |
◆ dslashParam
◆ gauge
const GaugeField& DslashCuda::gauge |
|
protected |
◆ ghost_str
char DslashCuda::ghost_str |
|
staticprotected |
◆ in
const cudaColorSpinorField* DslashCuda::in |
|
protected |
◆ init
bool DslashCuda::init = false |
|
staticprotected |
◆ out
cudaColorSpinorField* DslashCuda::out |
|
protected |
◆ reconstruct
◆ saveOut
char* DslashCuda::saveOut |
|
protected |
◆ saveOutNorm
char * DslashCuda::saveOutNorm |
|
protected |
const cudaColorSpinorField* DslashCuda::x |
|
protected |
The documentation for this class was generated from the following file: