mirror of
https://github.com/paboyle/Grid.git
synced 2024-11-09 23:45:36 +00:00
coalesceRead the blockSum
This commit is contained in:
parent
b82eee4733
commit
59b9d0e030
@ -471,13 +471,13 @@ inline void blockSum(Lattice<vobj> &coarseData,const Lattice<vobj> &fineData)
|
||||
|
||||
vobj zz = Zero();
|
||||
|
||||
accelerator_for(sc,coarse->oSites(),1,{
|
||||
accelerator_for(sc,coarse->oSites(),vobj::Nsimd(),{
|
||||
|
||||
// One thread per sub block
|
||||
Coordinate coor_c(_ndimension);
|
||||
Lexicographic::CoorFromIndex(coor_c,sc,coarse_rdimensions); // Block coordinate
|
||||
|
||||
vobj cd = zz;
|
||||
auto cd = coalescedRead(zz);
|
||||
|
||||
for(int sb=0;sb<blockVol;sb++){
|
||||
|
||||
@ -488,10 +488,10 @@ inline void blockSum(Lattice<vobj> &coarseData,const Lattice<vobj> &fineData)
|
||||
for(int d=0;d<_ndimension;d++) coor_f[d]=coor_c[d]*block_r[d] + coor_b[d];
|
||||
Lexicographic::IndexFromCoor(coor_f,sf,fine_rdimensions);
|
||||
|
||||
cd=cd+fineData_p[sf];
|
||||
cd=cd+coalescedRead(fineData_p[sf]);
|
||||
}
|
||||
|
||||
coarseData_p[sc] = cd;
|
||||
coalescedWrite(coarseData_p[sc],cd);
|
||||
|
||||
});
|
||||
return;
|
||||
|
Loading…
Reference in New Issue
Block a user