sparseqr test fails with seed of 1
Submitted by Philipp Schrader
Assigned to Nobody
Link to original bugzilla bug (#1719)
Version: 3.3 (current stable)
Platform: x86 - 64-bit
Description
In our test infrastructure we happen to be using a random seed of 1 for eigen tests.
I'm trying to upgrade to 3.3.7 (latest stable AFAICT), but am running into the following failure.
Everything else appears to work fine:
$ rm -f split_test_helper.h
$ for i in $(seq 1 999); do cat <<END >> split_test_helper.h
#define CALL_SUBTEST_${i}(FUNC) CALL_SUBTEST(FUNC)
#define EIGEN_TEST_PART_${i}
END
done
$ g++ -o foo -isystem. test/sparseqr.cpp -DEIGEN_TEST_FUNC=sparseqr
$ ./foo
Initializing random number generator with seed 1558638101
Repeating each test 10 times
$ EIGEN_SEED=1 ./foo
Initializing random number generator with seed 1
Repeating each test 10 times
Difference too large wrt tolerance 1e-06, relative error is: 8701.87
Test test_sparseqr_scalar<std::complex<double> >() failed in test/sparseqr.cpp (95)
verifyIsApprox(A * x, b)
Stack:
- test_sparseqr_scalar<std::complex<double> >()
- sparseqr
- Seed: 1
Aborted
$
I am not familiar enough with matrix operations to figure out if this is just an issue with the randomness generation or an actual bug.
I've switched our random seed to 100 and everything appears happy once again.