[Networkit] LAMG not converning for small tolerance

Moritz von Looz moritz.looz-corswarem at kit.edu
Fri Nov 4 19:27:50 CET 2016


Dear Simon,

thanks for your email and example!

In both the original unit test and your example code, the maximum convergence time is set to ten minutes with "status.maxConvergenceTime = 10 * 60 * 1000".
It is to be expected that with increasing precision and input size, the time until convergence grows until it no longer fits into the set maximum.

Do you mean it took unusually long and failed to converge even when increasing the maximum time?

All the best,
Moritz

Am 02.11.2016 um 19:04 schrieb Simon Adrian:
> I have played around with the test example cpp/numerics/test/LAMGGTest.cpp  of 
> the LAMG implementation.
> 
> It works well when the I use the default tolerance (i.e., 
> status.desiredResidualReduction = 1e-6* b.length() / 
> (hierarchy.at(0).getLaplacian() * x - b).length();)
> 
> When I decrease the tolerance, it stops working at around 1e-10 for the "wing" 
> graph, that is, it does not converge and the output for the final residual is 
> "-nan".
> 
> I'm not an expert in the LAMG algorithm, but it seems to me that this is not 
> the correct behavior (given that there is some distance to machine precision 
> from the tolerance).
> 
> I compiled a slightly modified version without the googletest environment (see 
> attachment); I presume that this should not effect the observation.
> 
> Thank you very much for your help!
> 
> Best regards,
> Simon
> 
> 
> 
> _______________________________________________
> NetworKit mailing list
> NetworKit at ira.uni-karlsruhe.de
> https://lists.ira.uni-karlsruhe.de/mailman/listinfo/networkit
> 



More information about the NetworKit mailing list