Default behavior for traces (during configure and execution)?
Dear StarPU developers,
In the reference documentation, it is mentioned that StarPU should be configured with the
--with-fxt option to generate traces and that the
STARPU_FXT_TRACE can be set to
0 to disable the generation of the
This is a great option to have. However, I am wondering whether it could be possible to have the following alternative default:
- StarPU configured with
--with-fxtbehavior by default (and something like
--no-fxtto disable it at configure);
- Without STARPU_FXT_TRACE explicitly set, the trace would not be generated (and conversely one could set
1to enable trace generation)
Of course, it certainly means that a performance study must be conducted, in order to make sure that the compilation with traces turned on does not have a significant overhead (of course when the trace is disabled during the execution with the
STARPU_FXT_TRACE option properly set up). I am also aware that it possibly means changing the internals of StarPU to limit the overhead, which may be a significant amount of work.
One advantage of the proposed default is that in most cases, we would only need one version of StarPU installed, while as soon as we conduct performance studies it is currently preferable to have both fxt and no-fxt versions installed. As a side effect, it would make the packaging in distributions (spack, guix, ...) more compact for StarPU and packages that depend on it (such as StarPU-cuda, chameleon, ...).
Thanks much once again for your support.