-
Notifications
You must be signed in to change notification settings - Fork 47
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
study behaviour of residuals in QUDA multishift CG (relevant for correction monomials) #496
Comments
QUDA itself also measures the mismatch in true and iterated residuals:
but it does not refine the shifts that clearly have not reached the target precision |
The failing system is not unusual, but it's behaviour is. The residual of the unshifted system first increases and only at around iteration 50 does the residual being to decrease. (note that this is fully in double precision).
|
QPhiX behaves similarly, but the final residual does not increase from shift 0 to shift 1 (probably because QUDA refines the shift 0 system while QPhiX does not):
|
tmLQCD itself behaves more or less like QPhiX:
In any case, neither solver manages to satisfy the criterion for this particular correction term. This might have to do with the gauge configuration used here, which is not fully thermalized and does not originate from the target action. To be studied further. |
@urbach I kind of understand why this is the case (the starting residual in the solve for the second term in the correction polynomial is very large and hence the target residual is beyond machine precision for the smallest shifts) but I don't quite see whether this affects the real precision of our correction monomial. This is also bound to get worse with increasing volume (this is on a 16c32 lattice...)
Usually a third solve is run to compute the c_3 term (which then of course has an even smaller contribution). My hunch is that we can safely ignore this as the contribution of the second term is just 1e-6 but still... |
Some of the shifts are rather poorly converged here (and they fail the
StrictResidualCheck
).Heavy quark residuals should help here, but I've never used them.
The text was updated successfully, but these errors were encountered: