|
|
Test SetTable of contentsThe test set is broken. Don't bother trying to use it.
A test set useful for testing GROMACS 3 versions has been available for some years. While there has been a release of the test set aimed at GROMACS 4 (gmxtest-4.0.4.tgz), it is not terribly useful and has a number of known failure cases. Accordingly, attempting to test your GROMACS 4 release with that test is not strongly recommended. There has been some work done to improve this situation, and the version of the regression tests in the public git repository should be useful for checking the correctness of a GROMACS 4 installation, and feedback on it is highly desirable. See the section below for getting access to this version. The tests consist of four parts.
All these tests can be run in single and double precision (reference results are provided) and in parallel. The results are checked by comparing energies and forces, for runs varying between 1 and 50-100 time steps. In some cases the results from a free energy calculation are compared to reference values as well. By doing these short simulations we effectively also test reproducibility of integrators, constraint algorithms, temperature and pressure scaling, and so on. The ambition is to add more tests, in order to cover all potentials present in GROMACS. There should also be tests for analysis tools, but these have not be made yet. Within the test set there is a README file with some additional information. Note It is normal for GROMACS 4.0-4.0.5 to fail gmxtest-4.0.4 on tip4p, tip4pflex, perhaps some others, and a host of [0-4]2[0-4] kernels for Buckingham-style VDW interactions. These are caused by various known issues which will be resolved in a future release of gmxtest. Obtaining the test setA distribution can be found at the GROMACS ftp site: You can also get the test through git. See Basic Git Usage for more information, but if you have git installed and web access then git clone
will download the test set. Be warned, uncompressed it is around 70MB - git does compress as it downloads, but it will still take some time. There are some known issues awaiting developer attention, which are mentioned here. Running the testsThe whole test is run from a single Perl script (gmxtest.pl). If run without arguments it will give you usage information: Usage: ./gmxtest.pl [ -np N ] [-verbose ] [ -double ] [ simple | complex | kernel | pdb2gmx | all ] or: ./gmxtest.pl clean | refclean | dist Typically one should run all tests at once (./gmxtest.pl all) and get a PASSED or FAILED result. Note however that passing the test is not a guarantee that everything is hunky-dory, because not all combination of options can be tested. Failing the test on the other hand should lead to an investigation of the particular component of the test that failed. If the tests fail, then you should start by doing a fresh install (unless you just did one), by either unpacking the distribution in a fresh directory or running make distclean in the GROMACS directory. After re-installation you should run the tests again. Now you should start trouble-shooting, and perhaps post to the gmx-users List.
Example test sessionA typical testing session might look like this: [kahlo:~/GROMACS/gmxtest] % ./gmxtest.pl all All 16 simple tests PASSED All 13 complex tests PASSED All 63 kernel tests PASSED [kahlo:~/GROMACS/gmxtest] % ./gmxtest.pl -double all All 16 simple tests PASSED All 13 complex tests PASSED All 63 kernel tests PASSED [kahlo:~/GROMACS/gmxtest] % ./gmxtest.pl -np 2 all Will test on 2 processors All 16 simple tests PASSED FAILED. Check files in dec+water 1 out of 13 complex tests FAILED All 63 kernel tests PASSED [kahlo:~/GROMACS/gmxtest] % setenv NOASSEMBLYLOOPS 1 [kahlo:~/GROMACS/gmxtest] % ./gmxtest.pl all All 16 simple tests PASSED FAILED. Check files in dec+water 1 out of 13 complex tests FAILED All 63 kernel tests PASSED [kahlo:~/GROMACS/gmxtest] % ./gmxtest.pl -double all All 16 simple tests PASSED All 13 complex tests PASSED All 63 kernel tests PASSED Here we have performed all tests on mdrun, in single and double precision and with and without assembly inner loops, and we got errors one one system. When we investigate the error, by first re-running only the complex tests (since the double precision test did not give any errors all output files have been removed): [kahlo:~/GROMACS/gmxtest] % ./gmxtest.pl complex FAILED. Check files in dec+water 1 out of 13 complex tests FAILED We then chdir complex/dec+water and check the file checkpot.out, where we find: There are 5 terms to compare in the energy files LJ (SR) step 34: -0.176025, step 34: -0.21167 LJ (SR) step 49: 3.21021, step 49: 3.04639 In the parallel test the error was very similar: There are 5 terms to compare in the energy files LJ (SR) step 34: -0.176025, step 34: -0.161865 This means that we have a small deviation in the Lennard Jones energy at two time steps, however in this particular case the forces and virial have not generated errors. We got this error because of numerical accuracy in adding up many interactions. We always compare numbers such that they should be identical within a certain tolerance (specified in the script), and the reason the current tests failed is because the numbers are very close to zero, while the energy fluctuations are on the order of hundreds of kJ/mol. In other words we can disregard this error as unimportant. |