void FaceBuffer::gather(cudaColorSpinorField &in, int dagger, int dir) { int dim = dir/2; if(!commDimPartitioned(dim)) return; if (dir%2==0){ // backwards send in.sendGhost(back_nbr_spinor_sendbuf[dim], dim, QUDA_BACKWARDS, dagger, &stream[2*dim + sendBackStrmIdx]); } else { // forwards send in.sendGhost(fwd_nbr_spinor_sendbuf[dim], dim, QUDA_FORWARDS, dagger, &stream[2*dim + sendFwdStrmIdx]); } }
void FaceBuffer::exchangeFacesStart(cudaColorSpinorField &in, int dagger, int dir) { int dim = dir/2; if(!commDimPartitioned(dim)) return; if (dir%2==0) { // backwards copy to host in.sendGhost(my_back_face[dim], dim, QUDA_BACKWARDS, dagger, &stream[2*dim+sendBackStrmIdx]); } else { // forwards copy to host in.sendGhost(my_fwd_face[dim], dim, QUDA_FORWARDS, dagger, &stream[2*dim+sendFwdStrmIdx]); } }