[ET Trac] [Einstein Toolkit] #515: Silently overrides DEBUG and OPTIMISE options
Einstein Toolkit
trac-noreply at einsteintoolkit.org
Thu Aug 18 01:46:16 CDT 2011
#515: Silently overrides DEBUG and OPTIMISE options
----------------------------+-----------------------------------------------
Reporter: barry.wardell | Owner: eschnett
Type: defect | Status: new
Priority: major | Milestone:
Component: SimFactory | Version:
Resolution: | Keywords:
----------------------------+-----------------------------------------------
Comment (by barry.wardell):
In principal, I agree that having --debug, --optimise and --profile is a
nice feature. However, I think the current implementation is worse than
not having those options at all. The problems I have with it are:
1. It '''silently''' overwrites the options inside the build command.
2. Because the default for --debug is False, if I don't give any --debug
or --optimise options it silently changes my optionlist to DEBUG="no" and
OPTIMISE="yes".
3. OPTIMISE is set based on the --debug option being False, so --optimise
is essentially useless.
4. The only way to find out about the --debug, etc. options is to read the
source code for sim-build.
5. It unconditionally overrides the CACHELINE_BYTES and CACHE_SIZE
options, making it impossible to use any values other than those in the
mdb for the machine.
6. As Roland mentioned, it is not possible to enable debug by default on a
machine (correct me if I'm wrong on this).
I think 1, 2 and 5 would be OK if the OptionLists were considered an
internal implementation detail in SimFactory. In that case, it setting any
of these overridden options in a SimFactory OptionList would be an error.
This is not the case because, as you say, it is desirable to use a
SimFactory OptionList without SimFactory (Why? Shouldn't you use the final
optionlist after being processed by SimFactory?). Having these options in
the OptionLists indicates that it is possible to change them. I think we
should choose between these two, unless someone has a better suggestion?
I think 3 is just wrong, but necessary because optimise and debug probably
use conflicting settings. The attached patch is my suggested fix. It first
checks the --optimize setting and then only if debug is enabled does it
disable optimisation (with a warning).
4 is a common annoyance with an obvious (but time consuming) solution.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/515#comment:3>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
More information about the Trac
mailing list