QUDA v0.4.0
A library for QCD on GPUs
Defines | Functions
quda/lib/pack_gauge.h File Reference
#include <math.h>

Go to the source code of this file.

Defines

#define SHORT_LENGTH   65536
#define SCALE_FLOAT   ((SHORT_LENGTH-1) / 2.f)
#define SHIFT_FLOAT   (-1.f / (SHORT_LENGTH-1))

Functions

template<typename Float >
short FloatToShort (const Float &a)
template<typename Float >
void ShortToFloat (Float &a, const short &b)
template<typename Float >
void pack8 (double2 *res, Float *g, int dir, int V)
template<typename Float >
void pack8 (float4 *res, Float *g, int dir, int V)
template<typename Float >
void pack8 (float2 *res, Float *g, int dir, int V)
template<typename Float >
void pack8 (short4 *res, Float *g, int dir, int V)
template<typename Float >
void pack8 (short2 *res, Float *g, int dir, int V)
template<typename Float >
void pack12 (double2 *res, Float *g, int dir, int V)
template<typename Float >
void pack12 (float4 *res, Float *g, int dir, int V)
template<typename Float >
void pack12 (float2 *res, Float *g, int dir, int V)
template<typename Float >
void pack12 (short4 *res, Float *g, int dir, int V)
template<typename Float >
void pack12 (short2 *res, Float *g, int dir, int V)
template<typename Float >
void pack18 (double2 *res, Float *g, int dir, int V)
template<typename Float >
void pack18 (float4 *res, Float *g, int dir, int V)
template<typename Float >
void pack18 (float2 *res, Float *g, int dir, int V)
template<typename Float >
void pack18 (short4 *res, Float *g, int dir, int V)
template<typename Float >
void pack18 (short2 *res, Float *g, int dir, int V)
template<typename Float >
void fatlink_short_pack18 (short2 *d_gauge, Float *h_gauge, int dir, int V)
template<typename Float >
void accumulateComplexProduct (Float *a, Float *b, Float *c, Float sign)
template<typename Float >
void complexDotProduct (Float *a, Float *b, Float *c)
template<typename Float >
void accumulateConjugateProduct (Float *a, Float *b, Float *c, int sign)
template<typename Float >
void complexConjugateProduct (Float *a, Float *b, Float *c)
template<typename Float >
void reconstruct8 (Float *mat, int dir, int idx)
template<typename Float >
void unpack8 (Float *h_gauge, double2 *d_gauge, int dir, int V, int idx)
template<typename Float >
void unpack8 (Float *h_gauge, float4 *d_gauge, int dir, int V, int idx)
template<typename Float >
void unpack8 (Float *h_gauge, float2 *d_gauge, int dir, int V, int idx)
template<typename Float >
void unpack8 (Float *h_gauge, short4 *d_gauge, int dir, int V, int idx)
template<typename Float >
void unpack8 (Float *h_gauge, short2 *d_gauge, int dir, int V, int idx)
template<typename Float >
void reconstruct12 (Float *mat, int dir, int idx)
template<typename Float >
void unpack12 (Float *h_gauge, double2 *d_gauge, int dir, int V, int idx)
template<typename Float >
void unpack12 (Float *h_gauge, float4 *d_gauge, int dir, int V, int idx)
template<typename Float >
void unpack12 (Float *h_gauge, float2 *d_gauge, int dir, int V, int idx)
template<typename Float >
void unpack12 (Float *h_gauge, short4 *d_gauge, int dir, int V, int idx)
template<typename Float >
void unpack12 (Float *h_gauge, short2 *d_gauge, int dir, int V, int idx)
template<typename Float >
void unpack18 (Float *h_gauge, double2 *d_gauge, int dir, int V)
template<typename Float >
void unpack18 (Float *h_gauge, float4 *d_gauge, int dir, int V)
template<typename Float >
void unpack18 (Float *h_gauge, float2 *d_gauge, int dir, int V)
template<typename Float >
void unpack18 (Float *h_gauge, short4 *d_gauge, int dir, int V)
template<typename Float >
void unpack18 (Float *h_gauge, short2 *d_gauge, int dir, int V)
template<typename Float , typename FloatN >
void packMILCGaugeField (FloatN *res, Float *gauge, int oddBit, QudaReconstructType reconstruct, int Vh, int pad)
template<typename Float , typename Float2 >
void pack10 (Float2 *res, Float *m, int dir, int Vh, int pad)
template<typename Float , typename Float2 >
void packMomField (Float2 *res, Float *mom, int oddBit, int Vh, int pad)
template<typename Float , typename Float2 >
void unpack10 (Float *m, Float2 *res, int dir, int Vh, int pad)
template<typename Float , typename Float2 >
void unpackMomField (Float *mom, Float2 *res, int oddBit, int Vh, int pad)

Define Documentation

#define SCALE_FLOAT   ((SHORT_LENGTH-1) / 2.f)

Definition at line 6 of file pack_gauge.h.

#define SHIFT_FLOAT   (-1.f / (SHORT_LENGTH-1))

Definition at line 7 of file pack_gauge.h.

#define SHORT_LENGTH   65536

Definition at line 5 of file pack_gauge.h.


Function Documentation

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

Definition at line 206 of file pack_gauge.h.

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

Definition at line 220 of file pack_gauge.h.

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

Definition at line 227 of file pack_gauge.h.

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

Definition at line 213 of file pack_gauge.h.

template<typename Float >
void fatlink_short_pack18 ( short2 *  d_gauge,
Float *  h_gauge,
int  dir,
int  V 
) [inline]

Definition at line 193 of file pack_gauge.h.

template<typename Float >
short FloatToShort ( const Float &  a) [inline]

Definition at line 10 of file pack_gauge.h.

template<typename Float , typename Float2 >
void pack10 ( Float2 *  res,
Float *  m,
int  dir,
int  Vh,
int  pad 
) [inline]

Definition at line 687 of file pack_gauge.h.

template<typename Float >
void pack12 ( double2 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 86 of file pack_gauge.h.

template<typename Float >
void pack12 ( float4 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 95 of file pack_gauge.h.

template<typename Float >
void pack12 ( float2 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 106 of file pack_gauge.h.

template<typename Float >
void pack12 ( short4 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 115 of file pack_gauge.h.

template<typename Float >
void pack12 ( short2 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 126 of file pack_gauge.h.

template<typename Float >
void pack18 ( short4 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 168 of file pack_gauge.h.

template<typename Float >
void pack18 ( short2 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 183 of file pack_gauge.h.

template<typename Float >
void pack18 ( double2 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 135 of file pack_gauge.h.

template<typename Float >
void pack18 ( float4 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 144 of file pack_gauge.h.

template<typename Float >
void pack18 ( float2 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 159 of file pack_gauge.h.

template<typename Float >
void pack8 ( float4 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 38 of file pack_gauge.h.

template<typename Float >
void pack8 ( float2 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 51 of file pack_gauge.h.

template<typename Float >
void pack8 ( short4 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 62 of file pack_gauge.h.

template<typename Float >
void pack8 ( double2 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 27 of file pack_gauge.h.

template<typename Float >
void pack8 ( short2 *  res,
Float *  g,
int  dir,
int  V 
) [inline]

Definition at line 75 of file pack_gauge.h.

template<typename Float , typename FloatN >
void packMILCGaugeField ( FloatN *  res,
Float *  gauge,
int  oddBit,
QudaReconstructType  reconstruct,
int  Vh,
int  pad 
)

Definition at line 623 of file pack_gauge.h.

template<typename Float , typename Float2 >
void packMomField ( Float2 *  res,
Float *  mom,
int  oddBit,
int  Vh,
int  pad 
)

Definition at line 698 of file pack_gauge.h.

template<typename Float >
void reconstruct12 ( Float *  mat,
int  dir,
int  idx 
) [inline]

Definition at line 358 of file pack_gauge.h.

template<typename Float >
void reconstruct8 ( Float *  mat,
int  dir,
int  idx 
) [inline]

Definition at line 235 of file pack_gauge.h.

template<typename Float >
void ShortToFloat ( Float &  a,
const short &  b 
) [inline]

Definition at line 15 of file pack_gauge.h.

template<typename Float , typename Float2 >
void unpack10 ( Float *  m,
Float2 *  res,
int  dir,
int  Vh,
int  pad 
) [inline]

Definition at line 711 of file pack_gauge.h.

template<typename Float >
void unpack12 ( Float *  h_gauge,
float2 *  d_gauge,
int  dir,
int  V,
int  idx 
) [inline]

Definition at line 397 of file pack_gauge.h.

template<typename Float >
void unpack12 ( Float *  h_gauge,
short4 *  d_gauge,
int  dir,
int  V,
int  idx 
) [inline]

Definition at line 407 of file pack_gauge.h.

template<typename Float >
void unpack12 ( Float *  h_gauge,
short2 *  d_gauge,
int  dir,
int  V,
int  idx 
) [inline]

Definition at line 419 of file pack_gauge.h.

template<typename Float >
void unpack12 ( Float *  h_gauge,
float4 *  d_gauge,
int  dir,
int  V,
int  idx 
) [inline]

Definition at line 385 of file pack_gauge.h.

template<typename Float >
void unpack12 ( Float *  h_gauge,
double2 *  d_gauge,
int  dir,
int  V,
int  idx 
) [inline]

Definition at line 375 of file pack_gauge.h.

template<typename Float >
void unpack18 ( Float *  h_gauge,
float4 *  d_gauge,
int  dir,
int  V 
) [inline]

Definition at line 438 of file pack_gauge.h.

template<typename Float >
void unpack18 ( Float *  h_gauge,
short4 *  d_gauge,
int  dir,
int  V 
) [inline]

Definition at line 460 of file pack_gauge.h.

template<typename Float >
void unpack18 ( Float *  h_gauge,
short2 *  d_gauge,
int  dir,
int  V 
) [inline]

Definition at line 474 of file pack_gauge.h.

template<typename Float >
void unpack18 ( Float *  h_gauge,
float2 *  d_gauge,
int  dir,
int  V 
) [inline]

Definition at line 451 of file pack_gauge.h.

template<typename Float >
void unpack18 ( Float *  h_gauge,
double2 *  d_gauge,
int  dir,
int  V 
) [inline]

Definition at line 429 of file pack_gauge.h.

template<typename Float >
void unpack8 ( Float *  h_gauge,
float2 *  d_gauge,
int  dir,
int  V,
int  idx 
) [inline]

Definition at line 319 of file pack_gauge.h.

template<typename Float >
void unpack8 ( Float *  h_gauge,
double2 *  d_gauge,
int  dir,
int  V,
int  idx 
) [inline]

Definition at line 295 of file pack_gauge.h.

template<typename Float >
void unpack8 ( Float *  h_gauge,
short2 *  d_gauge,
int  dir,
int  V,
int  idx 
) [inline]

Definition at line 345 of file pack_gauge.h.

template<typename Float >
void unpack8 ( Float *  h_gauge,
short4 *  d_gauge,
int  dir,
int  V,
int  idx 
) [inline]

Definition at line 329 of file pack_gauge.h.

template<typename Float >
void unpack8 ( Float *  h_gauge,
float4 *  d_gauge,
int  dir,
int  V,
int  idx 
) [inline]

Definition at line 305 of file pack_gauge.h.

template<typename Float , typename Float2 >
void unpackMomField ( Float *  mom,
Float2 *  res,
int  oddBit,
int  Vh,
int  pad 
)

Definition at line 722 of file pack_gauge.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines