molassembler
molassembler copied to clipboard
Test failures on Linux with GCC 10
Trying to build molassembler currently fails for me due to errors in the tests:
+ cmake -DCMAKE_AR=/home/conda/staged-recipes/build_artifacts/scine-molassembler_1656626094491/_build_env/bin/x86_64-conda-linux-gnu-ar -DCMAKE_CXX_COMPILER_AR=/home/conda/staged-recipes/build_artifacts/scine-molassembler_1656626094491/_build_env/bin/x86_64-conda-linux-gnu-gcc-ar -DCMAKE_C_COMPILER_AR=/home/conda/staged-recipes/build_artifacts/scine-molassembler_1656626094491/_build_env/bin/x86_64-conda-linux-gnu-gcc-ar -DCMAKE_RANLIB=/home/conda/staged-recipes/build_artifacts/scine-molassembler_1656626094491/_build_env/bin/x86_64-conda-linux-gnu-ranlib -DCMAKE_CXX_COMPILER_RANLIB=/home/conda/staged-recipes/build_artifacts/scine-molassembler_1656626094491/_build_env/bin/x86_64-conda-linux-gnu-gcc-ranlib -DCMAKE_C_COMPILER_RANLIB=/home/conda/staged-recipes/build_artifacts/scine-molassembler_1656626094491/_build_env/bin/x86_64-conda-linux-gnu-gcc-ranlib -DCMAKE_LINKER=/home/conda/staged-recipes/build_artifacts/scine-molassembler_1656626094491/_build_env/bin/x86_64-conda-linux-gnu-ld -DCMAKE_STRIP=/home/conda/staged-recipes/build_artifacts/scine-molassembler_1656626094491/_build_env/bin/x86_64-conda-linux-gnu-strip -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY '-DCMAKE_FIND_ROOT_PATH=/home/conda/staged-recipes/build_artifacts/scine-molassembler_1656626094491/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pl;/home/conda/staged-recipes/build_artifacts/scine-molassembler_1656626094491/_build_env/x86_64-conda-linux-gnu/sysroot' -DCMAKE_INSTALL_PREFIX=/home/conda/staged-recipes/build_artifacts/scine-molassembler_1656626094491/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pl -DCMAKE_INSTALL_LIBDIR=lib '-DCMAKE_PROGRAM_PATH=/home/conda/staged-recipes/build_artifacts/scine-molassembler_1656626094491/_build_env/bin;/home/conda/staged-recipes/build_artifacts/scine-molassembler_1656626094491/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pl/bin' -B _build -G Ninja -DSCINE_MARCH= -DBLA_VENDOR=Generic
-- The C compiler identification is GNU 10.3.0
-- The CXX compiler identification is GNU 10.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: $BUILD_PREFIX/bin/x86_64-conda-linux-gnu-cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: $BUILD_PREFIX/bin/x86_64-conda-linux-gnu-c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Setting build type to default 'Release'
-- Scine::UtilsOS found locally at $PREFIX/lib/cmake/ScineUtilsOS
-- Enabling GCC specific warning flags
-- Could NOT find MKL (missing: MKL_INCLUDE_DIRS MKL_LIBRARIES)
-- Found LAPACKE for use with Eigen3
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY - Success
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY - Success
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR - Success
-- Doxygen not found - Documentation for Molassembler will not be built.
-- Configuring done
-- Generating done
-- Build files have been written to: $SRC_DIR/_build
+ cmake --build _build
...
+ ctest --test-dir _build --output-on-failure
Internal ctest changing into directory: $SRC_DIR/_build
Test project $SRC_DIR/_build
Start 1: Molassembler
1/1 Test #1: Molassembler .....................***Failed 63.20 sec
Running 195 test cases...
Platform: linux
Compiler: GNU C++ version 10.3.0
STL : GNU libstdc++ version 20210408
Boost : 1.74.0
$SRC_DIR/test/Coherence.cpp(200): error: in "BidentateAssignmentRecognized": check reinterpretedAssignment == expectedAssignment has failed [ 17 != 4]
Conformer generation failure: Failed to generate decision list.
Conformer generation failure: Failed to generate decision list.
unknown location(0): fatal error: in "TetrangleSmoothingExplicit": signal: invalid floating point operation; address of failing instruction: 0x55815e949ac1
$SRC_DIR/test/DistanceGeometry/Smoothing.cpp(39): last checkpoint: "TetrangleSmoothingExplicit" test entry
Warning: Graph comparison with graphs generated by different versions of Molassembler!
Warning: Graph comparison with graphs generated by different versions of Molassembler!
Warning: Graph comparison with graphs generated by different versions of Molassembler!
Warning: Graph comparison with graphs generated by different versions of Molassembler!
System information
active environment : base
active env location : /opt/conda
shell level : 1
user config file : /home/conda/.condarc
populated config files : /opt/conda/.condarc
/home/conda/.condarc
conda version : 4.13.0
conda-build version : 3.21.9
python version : 3.9.13.final.0
virtual packages : __linux=5.13.0=0
__glibc=2.17=0
__unix=0=0
__archspec=1=x86_64
base environment : /opt/conda (writable)
conda av data dir : /opt/conda/etc/conda
conda av metadata url : None
channel URLs : https://conda.anaconda.org/conda-forge/linux-64
https://conda.anaconda.org/conda-forge/noarch
package cache : /home/conda/staged-recipes/build_artifacts/pkg_cache
/opt/conda/pkgs
envs directories : /opt/conda/envs
/home/conda/.conda/envs
platform : linux-64
user-agent : conda/4.13.0 requests/2.28.0 CPython/3.9.13 Linux/5.13.0-1031-azure centos/7.9.2009 glibc/2.17
UID:GID : 1001:1001
netrc file : None
offline mode : False
Thanks for reporting this. Does the issue persist when you redo a completely clean build?
That was actually a clean build.
In very rare cases, I encountered the same problem, but it appeared to pop up randomly. Does the issue persist in your case if you repeat a completely clean, fresh build?
Tried it again, now I'm hitting #3 also with GCC 10.3.0
Fixed this by applying a patch, the error is reproducible:
Conformer generation failure: Failed to generate decision list.
Conformer generation failure: Refined structure deemed inacceptable.
Conformer generation failure: Refined structure deemed inacceptable.
unknown location(0): fatal error: in "TetrangleSmoothingExplicit": signal: invalid floating point operation; address of failing instruction: 0x55afad212481
$SRC_DIR/test/DistanceGeometry/Smoothing.cpp(39): last checkpoint: "TetrangleSmoothingExplicit" test entry
Warning: Graph comparison with graphs generated by different versions of Molassembler!
Warning: Graph comparison with graphs generated by different versions of Molassembler!
Warning: Graph comparison with graphs generated by different versions of Molassembler!
Warning: Graph comparison with graphs generated by different versions of Molassembler!
Error: Decision list has not 4 entries per decision.
Would you mind sharing your patch, so we can have a look?
Posted the patch in #3 for compiling against nauty 2.7.2
Thanks!
Running with MKL instead of OpenBLAS seems to pass the tests. Are you testing against OpenBLAS?
Yes, both OpenBLAS and MKL.