PyJobTransforms: Add VTune support in the job transform a la Valgrind
I see many people get confused about running VTune
. This MR enables the user to run VTune
through the job transform infrastructure a la Valgrind
. In a nutshell, after this MR is merged, the user will be able to run a hotspots
analysis for their favorite job this way:
source /cvmfs/projects.cern.ch/intelsw/oneAPI/linux/x86_64/2023/vtune/latest/env/vars.sh;
lsetup "asetup Athena,23.0,latest";
Reco_tf.py (or any other transform) [...] --vtune "True";
It's possible to run any other analysis (or add extra VTune
options) via the vtuneExtraOpts
flag, e.g. for running a threading
analysis the user can do:
Reco_tf.py (or any other transform) [...] --vtune "True" --vtuneExtraOpts="-collect=threading";
It's also possible to discard the current default options, namely -run-pass-thru=--no-altstack -mrte-mode=native
, by doing --vtuneDefaultOpts "False"
.
cc: @tovsiann