> Looks to be that way. -O1 was fine. -O2 was not.
The "failed to converge" messages you reported come from
linalg/svd.c:149 which is part of the following check:
if (iter > 100 * N)
{
GSL_ERROR("SVD decomposition failed to converge", GSL_EMAXITER);
}
The N factor makes sense to me. Can anyone comment on how 100 was
chosen? The documentation says that this is the "Golub-Reinsch SVD
algorithm".
Peter, if you tweak that 100 to be some higher value can you get the
linalg 'make check' tests to pass at -O2 on your OS X system?
- Rhys