mirror of
https://github.com/paboyle/Grid.git
synced 2025-04-09 21:50:45 +01:00
deflation timers
This commit is contained in:
parent
6c66b8d997
commit
c144b32368
@ -70,12 +70,26 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
virtual void operator()(const Field &src,Field &guess) {
|
virtual void operator()(const Field &src,Field &guess) {
|
||||||
|
GridStopWatch w1;
|
||||||
|
GridStopWatch w2;
|
||||||
|
|
||||||
|
w1.Start();
|
||||||
guess = Zero();
|
guess = Zero();
|
||||||
|
w1.Stop();
|
||||||
|
|
||||||
|
LOG(Message) << "Zeroing the 'out' vector took: " << w1.Elapsed() << std::endl;
|
||||||
|
|
||||||
|
w2.Start();
|
||||||
for (int i=0;i<N;i++) {
|
for (int i=0;i<N;i++) {
|
||||||
const Field& tmp = evec[i];
|
const Field& tmp = evec[i];
|
||||||
axpy(guess,TensorRemove(innerProduct(tmp,src)) / eval[i],tmp,guess);
|
axpy(guess,TensorRemove(innerProduct(tmp,src)) / eval[i],tmp,guess);
|
||||||
}
|
}
|
||||||
|
w2.Stop();
|
||||||
|
|
||||||
guess.Checkerboard() = src.Checkerboard();
|
guess.Checkerboard() = src.Checkerboard();
|
||||||
|
|
||||||
|
LOG(Message) << "This projection took: " << w2.Elapsed() << std::endl;
|
||||||
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user