How do I use a graphical debugger such as totalview or DDT when running a specific task in a rose cylc (or stem) suite on Gadi?
1 Like
I think @SeanBryan51 had already found that page, so was there something missing in that documentation? Or was it out of date @SeanBryan51?
(Just want to make sure there is a solution to the query if others search for the same problem)
I managed to get DDT to work but not TotalView unfortunately.
Turned out using DDT was straight forward as per Martins notes. I have put here the steps to run a specific task in a rose stem suite with DDT:
- Find the task you want to debug in the cylc
runtime
section. - Add the
pre-script
setting to the task to specify which additional modules to load (the arm-forge module is required to use DDT). - Set environment variables
ROSE_LAUNCHER = ddt
andROSE_LAUNCHER_PREOPTS = --connect mpirun -n $NPROC
whereNPROC
is an environment variable equal to the number of processors required. - Start DDT on Gadi and run the rose suite. Wait for the reverse connection message.
For example, to use DDT for the following task I have the following:
[[nci_intel_loobos_gl4_cable]]
inherit = NCI_INTEL_LOOBOS
pre-script = """
module load openmpi/4.1.4
module load arm-forge
"""
[[[environment]]]
ROSE_LAUNCHER = ddt
ROSE_LAUNCHER_PREOPTS = --connect mpirun -n $NPROC
ROSE_TASK_APP = loobos_gl4
ROSE_APP_OPT_CONF_KEYS=cable
Here NPROC
is inherited from the NCI_INTEL_LOOBOS task.
Where does one find the reverse connection message?
(Also feel free to mark your own reply as the solution)