13 errorQuda(
"CPU fields do not support half precision");
16 errorQuda(
"CPU fields do not support non-zero padding");
22 errorQuda(
"10-reconstruction only supported with MILC gauge order");
32 gauge = (
void**)
safe_malloc(siteDim *
sizeof(
void*));
34 for (
int d=0; d<siteDim; d++) {
39 memset(gauge[d], 0, nbytes);
42 gauge[d] = ((
void**)param.
gauge)[d];
58 gauge = (
void**) param.
gauge;
70 for (
int i=0; i<
nDim; i++) {
97 for (
int d=0; d<siteDim; d++) {
111 for (
int i=0; i<
nDim; i++) {
139 for (
int d=0; d<
nDim; d++) {
146 for (
int d=0; d<
nDim; d++) {
178 memcpy(static_cast<char*>(recv[d])+bytes[d], send[d], bytes[d]);
179 memcpy(recv[d], static_cast<char*>(send[d])+bytes[d], bytes[d]);
186 for (
int d=0; d<
nDim; d++) {
197 errorQuda(
"Setting gauge pointer is only allowed when create="
198 "QUDA_REFERENCE_FIELD_CREATE type\n");
void setGauge(void **_gauge)
double maxGauge(const GaugeField &u)
#define pinned_malloc(size)
int commDimPartitioned(int dir)
void exchangeExtendedGhost(const int *R, bool no_comms_fill=false)
MsgHandle *** mh_send_back[2]
void * ghost[QUDA_MAX_DIM]
void extractGaugeGhost(const GaugeField &u, void **ghost)
QudaReconstructType reconstruct
MsgHandle * comm_declare_send_relative(void *buffer, int dim, int dir, size_t nbytes)
QudaFieldGeometry geometry
void comm_free(MsgHandle *mh)
void exchangeLink(void **ghost_link, void **link_sendbuf, QudaFieldLocation location)
void extractExtendedGaugeGhost(const GaugeField &u, int dim, const int *R, void **ghost, bool extract)
void comm_start(MsgHandle *mh)
MsgHandle *** mh_recv_back[2]
#define safe_malloc(size)
MsgHandle * comm_declare_receive_relative(void *buffer, int dim, int dir, size_t nbytes)
int surface[QUDA_MAX_DIM]
QudaGhostExchange ghostExchange
void * memset(void *s, int c, size_t n)
#define QUDA_MAX_DIM
Maximum number of dimensions supported by QUDA. In practice, no routines make use of more than 5...
bool compute_fat_link_max
void comm_wait(MsgHandle *mh)
QudaGaugeFieldOrder order
MsgHandle *** mh_send_fwd[2]
cpuGaugeField(const GaugeFieldParam &)
MsgHandle *** mh_recv_fwd[2]