libflame
libflame copied to clipboard
Crash in SVD computation
Hi,
There is a crash observed when libflame API DGESDD is invoked for the attached dataset. Size 143x143. The computation is resulting in denormal numbers and finally crash occurs.
The crash is in function FLA_Bsvd_ext_opd_var1() at the line FLA_Abort();
Also attached test code. It is stripped portion of a larger application code. Shows how inputs are passed example_dgesddc.txt
I think I've been experiencing a similar issue, but compounded with the fact that in my use-case, it appears to not be precisely replicable—whether it occurs appears to be stochastic. In any case, I observe libflame aborting in the same location. I additionally note that while I've not tested it, the behavior in the code is different in single precision (FLA_Bsvd_ext_ops_var1) from double, single complex, and double complex (FLA_Bsvd_ext_op{d,c,z}_var1)—the latter three all call FLA_Abort, but the former simply returns the number of iterations that were executed (n_iter_prev) before it gives up.