mirror of
https://github.com/paboyle/Grid.git
synced 2024-11-10 07:55:35 +00:00
16^3 optimise
This commit is contained in:
parent
ec25604a67
commit
9779aaea33
@ -77,13 +77,13 @@ int main (int argc, char ** argv)
|
|||||||
{
|
{
|
||||||
Grid_init(&argc,&argv);
|
Grid_init(&argc,&argv);
|
||||||
|
|
||||||
const int Ls=24;
|
const int Ls=16;
|
||||||
const int nbasis = 60;
|
const int nbasis = 40;
|
||||||
const int cb = 0 ;
|
const int cb = 0 ;
|
||||||
RealD mass=0.00078;
|
RealD mass=0.01;
|
||||||
RealD M5=1.8;
|
RealD M5=1.8;
|
||||||
RealD b=1.5;
|
RealD b=1.0;
|
||||||
RealD c=0.5;
|
RealD c=0.0;
|
||||||
|
|
||||||
GridCartesian * UGrid = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(),
|
GridCartesian * UGrid = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(),
|
||||||
GridDefaultSimd(Nd,vComplex::Nsimd()),
|
GridDefaultSimd(Nd,vComplex::Nsimd()),
|
||||||
@ -167,7 +167,7 @@ int main (int argc, char ** argv)
|
|||||||
std::cout << "**************************************"<<std::endl;
|
std::cout << "**************************************"<<std::endl;
|
||||||
ConjugateGradient<CoarseVector> coarseCG(4.0e-2,20000,true);
|
ConjugateGradient<CoarseVector> coarseCG(4.0e-2,20000,true);
|
||||||
|
|
||||||
const int nrhs=12;
|
const int nrhs=8;
|
||||||
|
|
||||||
Coordinate mpi=GridDefaultMpi();
|
Coordinate mpi=GridDefaultMpi();
|
||||||
Coordinate rhMpi ({1,1,mpi[0],mpi[1],mpi[2],mpi[3]});
|
Coordinate rhMpi ({1,1,mpi[0],mpi[1],mpi[2],mpi[3]});
|
||||||
@ -185,7 +185,7 @@ int main (int argc, char ** argv)
|
|||||||
std::cout << "**************************************"<<std::endl;
|
std::cout << "**************************************"<<std::endl;
|
||||||
|
|
||||||
typedef HermitianLinearOperator<MultiGeneralCoarsenedMatrix_t,CoarseVector> MrhsHermMatrix;
|
typedef HermitianLinearOperator<MultiGeneralCoarsenedMatrix_t,CoarseVector> MrhsHermMatrix;
|
||||||
Chebyshev<CoarseVector> IRLCheby(0.01,42.0,301); // 1 iter
|
Chebyshev<CoarseVector> IRLCheby(0.5,40.0,101); // 1 iter
|
||||||
MrhsHermMatrix MrhsCoarseOp (mrhs);
|
MrhsHermMatrix MrhsCoarseOp (mrhs);
|
||||||
|
|
||||||
CoarseVector pm_src(CoarseMrhs);
|
CoarseVector pm_src(CoarseMrhs);
|
||||||
@ -193,8 +193,8 @@ int main (int argc, char ** argv)
|
|||||||
PowerMethod<CoarseVector> cPM;
|
PowerMethod<CoarseVector> cPM;
|
||||||
cPM(MrhsCoarseOp,pm_src);
|
cPM(MrhsCoarseOp,pm_src);
|
||||||
|
|
||||||
int Nk=192;
|
int Nk=nrhs;
|
||||||
int Nm=384;
|
int Nm=Nk*3;
|
||||||
int Nstop=Nk;
|
int Nstop=Nk;
|
||||||
int Nconv_test_interval=1;
|
int Nconv_test_interval=1;
|
||||||
|
|
||||||
@ -250,9 +250,9 @@ int main (int argc, char ** argv)
|
|||||||
// Extra HDCG parameters
|
// Extra HDCG parameters
|
||||||
//////////////////////////
|
//////////////////////////
|
||||||
int maxit=3000;
|
int maxit=3000;
|
||||||
ConjugateGradient<CoarseVector> CG(5.0e-2,maxit,false);
|
ConjugateGradient<CoarseVector> CG(2.0e-1,maxit,false);
|
||||||
RealD lo=2.0;
|
RealD lo=2.0;
|
||||||
int ord = 7;
|
int ord = 9;
|
||||||
|
|
||||||
DoNothingGuesser<CoarseVector> DoNothing;
|
DoNothingGuesser<CoarseVector> DoNothing;
|
||||||
HPDSolver<CoarseVector> HPDSolveMrhs(MrhsCoarseOp,CG,DoNothing);
|
HPDSolver<CoarseVector> HPDSolveMrhs(MrhsCoarseOp,CG,DoNothing);
|
||||||
|
Loading…
Reference in New Issue
Block a user