Teko test failing with intel 16
Created by: bmpersc
The test Teko_DiagonallyScaledPreconditioner_MPI_1 is failing when built with intel 16. You can view the error at:
http://testing.sandia.gov/cdash/testDetails.php?test=35002833&build=2588874
In case the link is dead the full output from the test is:
Teuchos::GlobalMPISession::GlobalMPISession(): started processor with name ascic114 and rank 0!
*** Unit test suite ...
Sorting tests by group name then by the order they were added ... (time = 2.22e-05)
Running unit tests ...
-
tDiagonalOperator_replaceValues_UnitTest ... Passed
-
tDiagonalOperator_replaceValues_tpetra_UnitTest ... Passed
-
tDiagonallyScaledPreconditioner_invfactory_test_UnitTest ... Teko: Inverse "DiagScal" is of type strat prec = 0, strat solv = 0, block prec = 1 Teko: Begin debug MSG Looked up "Diagonal Scaling" Built Teuchos::RCPTeko::PreconditionerFactory{ptr=0x235e560,node=0x2374800,strong_count=1,weak_count=0} Teko: End debug MSG Teko: Inverse "Amesos" is of type strat prec = 0, strat solv = 1, block prec = 0 Teko: Inverse "Amesos" is of type strat prec = 0, strat solv = 1, block prec = 0 Passed
-
tDiagonallyScaledPreconditioner_invfactory_test_tpetra_UnitTest ... Teko: Inverse "DiagScal" is of type strat prec = 0, strat solv = 0, block prec = 1 Teko: Begin debug MSG Looked up "Diagonal Scaling" Built Teuchos::RCPTeko::PreconditionerFactory{ptr=0x237f950,node=0x233ae70,strong_count=1,weak_count=0} Teko: End debug MSG Teko: Inverse "Belos" is of type strat prec = 0, strat solv = 1, block prec = 0 Teko: Inverse "Ifpack2" is of type strat prec = 1, strat solv = 0, block prec = 0 Passed
-
tDiagonallyScaledPreconditioner_application_test_row_UnitTest ... Teko: Inverse "Amesos" is of type strat prec = 0, strat solv = 1, block prec = 0 Teko: Inverse "ML" is of type strat prec = 1, strat solv = 0, block prec = 0 Passed
-
tDiagonallyScaledPreconditioner_application_test_row_tpetra_UnitTest ... Teko: Inverse "Belos" is of type strat prec = 0, strat solv = 1, block prec = 0 Teko: Inverse "Ifpack2" is of type strat prec = 1, strat solv = 0, block prec = 0 Passed
-
tDiagonallyScaledPreconditioner_application_test_column_UnitTest ... Teko: Inverse "Amesos" is of type strat prec = 0, strat solv = 1, block prec = 0 Teko: Inverse "ML" is of type strat prec = 1, strat solv = 0, block prec = 0 Passed
-
tDiagonallyScaledPreconditioner_application_test_column_tpetra_UnitTest ... Teko: Inverse "Belos" is of type strat prec = 0, strat solv = 1, block prec = 0 Teko: Inverse "Ifpack2" is of type strat prec = 1, strat solv = 0, block prec = 0
*** Entering LinearOpTester<double,double>::compare(op1,op2,...) ...
describe op1: Teko::PreconditionerLinearOp{rangeDim=50,domainDim=50} [Operator] = "(absRowSum( )))(ANYM)": Thyra::DefaultMultipliedLinearOp{numOps=2,rangeDim=50,domainDim=50} Constituent LinearOpBase objects for M = Op[0]...*Op[numOps-1]: Op[0] = "absRowSum( ))": Thyra::DefaultDiagonalLinearOp Op[1] = Thyra::DefaultInverseLinearOp{rangeDim=50,domainDim=50}: lows = Thyra::BelosLinearOpWithSolve{iterativeSolver='"Belos::PseudoBlockGmresSolMgr": {Num Blocks: 300, Maximum Iterations: 1000, Maximum Restarts: 20, Convergence Tolerance: 1e-08}',fwdOp='Thyra::TpetraLinearOp<double, int, long long, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >{rangeDim=50,domainDim=50}'}
describe op2: Thyra::DefaultInverseLinearOp{rangeDim=50,domainDim=50}: lows = Thyra::BelosLinearOpWithSolve{iterativeSolver='"Belos::PseudoBlockGmresSolMgr": {Num Blocks: 300, Maximum Iterations: 1000, Maximum Restarts: 20, Convergence Tolerance: 1e-08}',fwdOp='Thyra::TpetraLinearOp<double, int, long long, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >{rangeDim=50,domainDim=50}'}
Checking that range and domain spaces are compatible ... op1.domain()->isCompatible(*op2.domain()) ? passed
op1.range()->isCompatible(*op2.range()) ? passed
Checking that op1 == op2 ... Checking that op1 and op2 produce the same results:
0.5_op1_v1 == 0.5_op2_v1 ________/ ________/ v2 v3
norm(v2-v3) ~= 0
Random vector tests = 1
Testing relative error between vectors v2.col[0] and v3.col[0]: ||v2.col[0]|| = 75.9316 ||v3.col[0]|| = 75.9316 Check: rel_err(v2.col[0],v3.col[0]) = 1.70949e-14 <= linear_properties_error_tol() = 5e-14 : passed
Congratulations, these two LinearOpBase objects seem to be the same!
*** Leaving LinearOpTester<double,double>::compare(...) Apply 0: SUCCESS
*** Entering LinearOpTester<double,double>::compare(op1,op2,...) ...
describe op1: Teko::PreconditionerLinearOp{rangeDim=50,domainDim=50} [Operator] = "(absRowSum( )))(ANYM)": Thyra::DefaultMultipliedLinearOp{numOps=2,rangeDim=50,domainDim=50} Constituent LinearOpBase objects for M = Op[0]...*Op[numOps-1]: Op[0] = "absRowSum( ))": Thyra::DefaultDiagonalLinearOp Op[1] = Thyra::DefaultInverseLinearOp{rangeDim=50,domainDim=50}: lows = Thyra::BelosLinearOpWithSolve{iterativeSolver='"Belos::PseudoBlockGmresSolMgr": {Num Blocks: 300, Maximum Iterations: 1000, Maximum Restarts: 20, Convergence Tolerance: 1e-08}',fwdOp='Thyra::TpetraLinearOp<double, int, long long, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >{rangeDim=50,domainDim=50}'}
describe op2: Thyra::DefaultInverseLinearOp{rangeDim=50,domainDim=50}: lows = Thyra::BelosLinearOpWithSolve{iterativeSolver='"Belos::PseudoBlockGmresSolMgr": {Num Blocks: 300, Maximum Iterations: 1000, Maximum Restarts: 20, Convergence Tolerance: 1e-08}',fwdOp='Thyra::TpetraLinearOp<double, int, long long, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >{rangeDim=50,domainDim=50}'}
Checking that range and domain spaces are compatible ... op1.domain()->isCompatible(*op2.domain()) ? passed
op1.range()->isCompatible(*op2.range()) ? passed
Checking that op1 == op2 ... Checking that op1 and op2 produce the same results:
0.5_op1_v1 == 0.5_op2_v1 ________/ ________/ v2 v3
norm(v2-v3) ~= 0
Random vector tests = 1
Testing relative error between vectors v2.col[0] and v3.col[0]: ||v2.col[0]|| = 82.7448 ||v3.col[0]|| = 82.7448 Check: rel_err(v2.col[0],v3.col[0]) = 5.75199e-14 <= linear_properties_error_tol() = 5e-14 : FAILED
Oh no, these two LinearOpBase objects seem to be different (see above failures)!
*** Leaving LinearOpTester<double,double>::compare(...) Apply 0: FAILURE FAILED tDiagonallyScaledPreconditioner_application_test_column_tpetra_UnitTest Location: /scratch/trilinos/workspace/trilinos-folder/Trilinos_generic_nightly/MPI_Release_DEV/Trilinos/packages/teko/tests/unit_tests/tDiagonallyScaledPreconditioner.cpp:392
The following tests FAILED: 7. tDiagonallyScaledPreconditioner_application_test_column_tpetra_UnitTest ...
Total Time: 0.489 sec
Summary: total = 8, run = 8, passed = 7, failed = 1
End Result: TEST FAILED
Primary job terminated normally, but 1 process returned
a non-zero exit code.. Per user-direction, the job has been aborted.
mpiexec detected that one or more processes exited with non-zero status, thus causing the job to be terminated. The first process to do so was:
Process name: [[819,1],0]