mirror of
https://github.com/paboyle/Grid.git
synced 2024-11-15 02:05:37 +00:00
Working on NVCC
This commit is contained in:
parent
11b07b950d
commit
955da582b6
@ -354,7 +354,7 @@ void A2Autils<FImpl>::MesonFieldGPU(TensorType &mat,
|
|||||||
int Lblock = mat.dimension(3);
|
int Lblock = mat.dimension(3);
|
||||||
int Rblock = mat.dimension(4);
|
int Rblock = mat.dimension(4);
|
||||||
|
|
||||||
assert(Lblock % block==0);
|
// assert(Lblock % block==0);
|
||||||
// assert(Rblock % block==0);
|
// assert(Rblock % block==0);
|
||||||
|
|
||||||
GridBase *grid = lhs_wi[0].Grid();
|
GridBase *grid = lhs_wi[0].Grid();
|
||||||
@ -387,7 +387,6 @@ void A2Autils<FImpl>::MesonFieldGPU(TensorType &mat,
|
|||||||
//////////////////////////////////////////
|
//////////////////////////////////////////
|
||||||
// Should write a SpinOuterColorTrace
|
// Should write a SpinOuterColorTrace
|
||||||
//////////////////////////////////////////
|
//////////////////////////////////////////
|
||||||
std::cout <<GridLogMessage << "accelerator_for for i="<<i<<" j="<<j<<std::endl;
|
|
||||||
t_afor-=usecond();
|
t_afor-=usecond();
|
||||||
accelerator_for(ss,grid->oSites(),(size_t)Nsimd,{
|
accelerator_for(ss,grid->oSites(),(size_t)Nsimd,{
|
||||||
auto left = conjugate(lhs_v(ss));
|
auto left = conjugate(lhs_v(ss));
|
||||||
@ -401,11 +400,10 @@ void A2Autils<FImpl>::MesonFieldGPU(TensorType &mat,
|
|||||||
}}
|
}}
|
||||||
coalescedWrite(SpinMat_v[ss],vv);
|
coalescedWrite(SpinMat_v[ss],vv);
|
||||||
});
|
});
|
||||||
}// j within block
|
|
||||||
t_afor+=usecond();
|
t_afor+=usecond();
|
||||||
|
}// j within block
|
||||||
// After getting the sitewise product do the mom phase loop
|
// After getting the sitewise product do the mom phase loop
|
||||||
for(int m=0;m<Nmom;m++){
|
for(int m=0;m<Nmom;m++){
|
||||||
std::cout <<GridLogMessage << "mom "<<m<<" i="<<i<<" jo="<<jo<<std::endl;
|
|
||||||
t_pha-=usecond();
|
t_pha-=usecond();
|
||||||
MomSpinMat = SpinMat * mom[m];
|
MomSpinMat = SpinMat * mom[m];
|
||||||
t_pha+=usecond();
|
t_pha+=usecond();
|
||||||
@ -415,7 +413,6 @@ void A2Autils<FImpl>::MesonFieldGPU(TensorType &mat,
|
|||||||
t_sum+=usecond();
|
t_sum+=usecond();
|
||||||
t_trace-=usecond();
|
t_trace-=usecond();
|
||||||
for(int mu=0;mu<Ngamma;mu++){
|
for(int mu=0;mu<Ngamma;mu++){
|
||||||
std::cout <<GridLogMessage << "trace Gamma "<<mu<<std::endl;
|
|
||||||
for(int t=0;t<sliced.size();t++){
|
for(int t=0;t<sliced.size();t++){
|
||||||
for(int j=jo;j<MIN(Rblock,jo+block);j++){
|
for(int j=jo;j<MIN(Rblock,jo+block);j++){
|
||||||
int jj=j%block;
|
int jj=j%block;
|
||||||
|
Loading…
Reference in New Issue
Block a user