1 # Comment line(s) preceding each configuration document the main
2 # intent behind that configuration, so that we can correctly judge
3 # whether to preserve that during maintenance decisions.
5 # Other configurations might coincidentally test such configurations
6 # (e.g. because they are the current default), but it is appropriate
7 # to intend to teach each feature (or a feature combination) exactly
8 # once, and for the intent to be reflected precisely in the
9 # configuration syntax, so that the configurations are stable even
10 # if the defaults change in future.
12 # The phrase "at time of release" refers to either the initial
13 # GROMACS release from that branch, or the next expected release
14 # from that branch. (We will tend not to retroactively support
15 # newer infrastructure in CI, unless it's either easy or of
19 # Test oldest supported CUDA
20 # Test oldest supported Ubuntu
22 # Test MPMD PME with library MPI
23 # Test cmake FindCUDA functionality introduced in 3.8
24 gcc-4.8 gpu cuda-6.5 cmake-3.8.1 mpi npme=1 nranks=2 openmp
26 # Test newest gcc supported by newest CUDA at time of release
27 # Test thread-MPI with CUDA
28 # Test cmake version from before new FindCUDA support (in 3.8)
29 # Test SIMD implementation of pair search for GPU code-path
30 gcc-5 gpu cuda-8.0 thread-mpi openmp cmake-3.6.1 release-with-assert simd=avx2_256
32 # Test with ThreadSanitizer (compiled without OpenMP, even though
33 # this gcc was configured with --disable-linux-futex, because
34 # Redmine #1850 is unresolved, which causes more suspected
35 # false positives than races detected)
36 # Test fftpack fallback
37 gcc-7 tsan no-openmp fftpack
39 # Test newest gcc at time of release
42 # Test on MacOS (because gcc-6 is only available there)
46 # Test oldest supported cmake
48 # Test double precision
51 clang-3.4 double thread-mpi no-openmp fftpack cmake-3.4.3
53 # Test newest clang at time of release
54 # Test with AddressSanitizer (without OpenMP, see below)
55 clang-4 no-openmp asan
57 # Test oldest supported MSVC on Windows
58 # Test newest supported MSVC on Windows
59 msvc-2015 openmp release-with-assert
61 # Test oldest supported icc on Windows
62 # Test newest supported icc on Windows
63 icc-16.0 msvc-2015 fftpack
65 # Test newest cmake at time of release
67 # Test without any MPI
68 # Test on CentOS (because icc-16.0 is only available there)
69 icc-16.0 no-thread-mpi openmp mkl cmake-3.8.1 simd=avx_256
74 gcc-4.8 openmp opencl cuda-7.5 mpi release-with-assert simd=avx2_256
77 # Test AVX_128_FMA SIMD
78 gcc-5 openmp simd=avx_128_fma opencl amdappsdk-3.0
81 # Add OpenMP support to ASAN build (but libomp.so in clang-4 reports leaks, so might need a suitable build or suppression)
83 # Test newest supported LTS Ubuntu
84 # Update gpu testing specifiers per https://redmine.gromacs.org/issues/2161
85 # Resolve Redmine #1850 so that ThreadSanitizer can test our OpenMP code