Bug #2373
gmx -nice can't work
Description
In CommandLineModuleManager::Impl::processCommonOptions there's a hardcoded assumption that the gmx wrapper binary will only take no-argument options. Many of its options are booleans, but -nice takes an integer, which leads to
Command line: gmx -nice 19 ------------------------------------------------------- Program: gmx, version 2018-rc1-dev-20180103-f826c0888-dirty Source file: src/gromacs/commandline/cmdlineparser.cpp (line 279) Function: void gmx::CommandLineParser::parse(int*, char**) Error in user input: Invalid command-line options In command-line option -nice Too few (valid) values For more information and tips for troubleshooting, please check the GROMACS website at http://www.gromacs.org/Documentation/Errors -------------------------------------------------------
History
#2 Updated by Erik Lindahl about 3 years ago
Short-term I would suggest we change it so it does not take any argument, but just runs at nice 19 if specified.
I see little reason to execute Gromacs at any nice level that is not 0 or 19 (well, maybe 19 would be useful for hardcore people ;)
#3 Updated by Teemu Murtola about 3 years ago
It is not clear from the issue description or the title, but, e.g., gmx mdrun -nice 19
should still work, and that is likely what everyone would intuitively use, so there is not much loss in functionality.
But adding 19 as a default value should also be trivial.
#4 Updated by Mark Abraham about 3 years ago
Teemu Murtola wrote:
It is not clear from the issue description or the title, but, e.g.,
gmx mdrun -nice 19
should still work, and that is likely what everyone would intuitively use, so there is not much loss in functionality.But adding 19 as a default value should also be trivial.
I meant gmx -nice 19 mdrun
can't work, which I thought should work, because gmx -h
lists it as an available option. Longer term, several of those make sense to move to being available as default flags for tools (-h, -hidden, -nice) and not as flags to gmx itself, and some can be their own tool (-version, -copyright)