Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

I was asked by Dave Norton of PGI to see if I can get an interactive debugger working with ACME. His request was pgdbg, but he also wanted to see if DDT would work. This page documents my efforts for this. I'm initially testing this with something small:

./create_newcase -compset FC5AV1C-L -case enable_debugger -res ne4_ne4 -project stf006 --output-root /lustre/atlas1/stf006/scratch/imn
cd enable_debugger
./xmlchange DEBUG=TRUE

Also, to have an error to actually debug, I set the PGI compiler to 16.10.0 in env_mach_specific.xml.

./case.setup
./case.build

I then changed the "run_exe" value from "${EXEROOT}/acme.exe" to "gdb ${EXEROOT}/acme.exe" to have it run the debugger in env_mach_specific.xml

EXEROOT

On Titan, the EXEROOT is important because while the executable may normally live in NFS file space, if the executable is an argument to a debugger, it must then live in Lustre space. The EXEROOT variable in CIME is currently defaulting to: $CIME_OUTPUT_ROOT/$CASE/bld, which is good because it means that one can change the location of the executable by specifying --output-root in the ./create_newcase command, which makes things much simpler.

Running Interactively

qsub -I -A stf006 -lwalltime=01:00:00,nodes=1 -q debug

Then, inside the job, cd to the case directory, then:

source .env_mach_specific.sh
./case.submit --no-batch


  • No labels