1
0
mirror of https://github.com/paboyle/Grid.git synced 2024-11-10 07:55:35 +00:00

use simd type

This commit is contained in:
azusayamaguchi 2016-10-21 22:35:29 +01:00
parent 75ebd3a0d1
commit 910b8dd6a1

View File

@ -380,7 +380,7 @@ void CartesianCommunicator::SendToRecvFromBegin(std::vector<CommsRequest_t> &lis
int small = (bytes<MAX_MPI_SHM_BYTES); int small = (bytes<MAX_MPI_SHM_BYTES);
#ifndef SHM_USE_BCOPY #ifndef SHM_USE_BCOPY
typedef long long T __attribute__ ((__vector_size__ (16))); typedef vRealD T;
int words = bytes/sizeof(T); int words = bytes/sizeof(T);
assert(((size_t)bytes &(sizeof(T)-1))==0); assert(((size_t)bytes &(sizeof(T)-1))==0);
// assert(((size_t)xmit &(sizeof(T)-1))==0); // assert(((size_t)xmit &(sizeof(T)-1))==0);
@ -400,7 +400,7 @@ void CartesianCommunicator::SendToRecvFromBegin(std::vector<CommsRequest_t> &lis
T *op = (T *)to_ptr; T *op = (T *)to_ptr;
PARALLEL_FOR_LOOP PARALLEL_FOR_LOOP
for(int w=0;w<words;w++) { for(int w=0;w<words;w++) {
op[w]=ip[w]; vstream(op[w],ip[w]);
} }
#endif #endif
bcopy(&_processor,&to_ptr[bytes],sizeof(_processor)); bcopy(&_processor,&to_ptr[bytes],sizeof(_processor));
@ -426,7 +426,7 @@ void CartesianCommunicator::SendToRecvFromBegin(std::vector<CommsRequest_t> &lis
T *op = (T *)recv; T *op = (T *)recv;
PARALLEL_FOR_LOOP PARALLEL_FOR_LOOP
for(int w=0;w<words;w++) { for(int w=0;w<words;w++) {
op[w]=ip[w]; vstream(op[w],ip[w]);
} }
#endif #endif
bcopy(&from_ptr[bytes] ,&tag ,sizeof(tag)); bcopy(&from_ptr[bytes] ,&tag ,sizeof(tag));