Skip to content

PyJobTransforms: Add VTune support in the job transform a la Valgrind

Alaettin Serhan Mete requested to merge amete/athena:23.0-vtune-trf into 23.0

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

Merge request reports