On the Cray XT Catamount, all jobs running on compute nodes are started with the yod starter program. These jobs do not have to be MPI jobs. Debugging a program started with yod is similar to debugging any program using a starter program. In general, you would type:
totalviewtotalview_argsyod -ayod_args
For example:
totalview yod -a -np 4 ./my_prog
Here are some things you should know:
• tvdsvr_rs processes are started for your compute nodes. (This is a process started by TotalView on a remote node that communicates back with TotalView. For more information on this server, see Chapter 18, "Setting Up Remote Debugging Sessions".) yod then passes information to TotalView, which then starts the servers. If this does not occur, consult your yod documentation.
• There may be more than one tvdsvr_rs process. TotalView creates one tvdsvr_rs process for each RS_DBG_CLIENTS_PER_SERVER or 64 compute nodes.
• To attach to a running program, attach to the instance of yod that is controlling it, using normal TotalView mechanisms. TotalView automatically attaches to all compute node tasks that are part of the job.
• TotalView cannot know how many compute nodes are available, so each server assumes that it will be serving 64 compute nodes, and asks for a 64-node license.
If you wish to use a small license (less than 64 processors), override this default using the -nodes_allowedtvdsvr command-line option. The argument to this option specifies how many nodes the server supports and how many licenses it needs. Because this is a tvdsvr_rs command-line option, you must add it into the server launch string.
You can also use the -nodes_allowed server launch string option along with the RS_DBG_CLIENTS_PER_SERVER environment variable to increase the number of compute nodes each server will serve (and the number of Cray licences it asks for). However, we do not recommend that you set this server launch string option to a value greater than 256. (Note that you need only set this variable if RS_DBG_CLIENTS_PER_SERVER is greater than 64.)
NOTE >> While debugging, you must also have the FlexLM license server running. TotalView uses this server to verify that you are using licensed software. However, this server is not related to the servers that TotalView launches when you are debugging your program.