#530: Change default for --num-threads --------------------------+------------------------------------------------- Reporter: eschnett | Owner: hinder Type: enhancement | Status: assigned Priority: major | Milestone: Component: SimFactory | Version: Resolution: | Keywords: --------------------------+-------------------------------------------------
Comment (by eschnett):
Simfactory doesn't parse parameter files, it parses thorn lists to add/remove thorns not supported on a machine.
It is really necessary to have this mechanism? While some people want to run GRHydro with a single thread, others work on improving its performance and want to run it with multiple threads. So we can't make this thorn single-thread, and it wouldn't address this problem. In GRHydro, someone recently replaced the workshare constructs with explicit loops, addressing a shortcoming in the Intel compiler.
I am really afraid that we are over-designing here. We are trying to anticipate problems, and are designing a non-trivial solution before we know what the problem is. I say we change the default number of threads, correct the (possibly wrong) MDB entries as we go along, and wait for feedback. We announce this change in a positive way and enjoy progress.
Since this discussion is about a default setting, Simfactory's choice reflects the state of the art, namely that most machines these days require OpenMP to achieve good performance. This has changed from a few years ago, and hence changing the default makes sense. I outlined several ways in which users can choose their own settings overriding the default, and (as we all know) adding --num-threads to a submit command isn't that big of a deal -- we've been doing it for a long time ourselves.