Debugging Memory Problems with MemoryScape : Add New Program (Parallel)
Add New Program (Parallel)
Use this screen to add a parallel program to the current memory debugging session. After entering the name of the program, you must enter the MPI type, tasks, and perhaps nodes. You can also add the MPI launcher arguments, command-line arguments, and environment variables that your program needs. If you need to add more than one program, you must return to this screen for each.
After entering the filename, click Next.
Move your cursor over the graphic to obtain help.
Name of the program
You can type the name of the file or look for it in the file system by clicking the Browse button. The path to this file can either be relative to the place in the file system from which you started MemoryScape or it can be an absolute file name. For example, you could either type my_progs/a_program or /home/me/my_progs/a_program. If you select a program named in the pulldown list, MemoryScape inserts some of the arguments that you previously used into controls on this page.
MPI Type
Select the MPI system from this pulldown list.
Tasks
Enter the number of tasks or ranks that your program will use. This is the equivalent of the -np (number of processes) argument contained within many MPI systems.
Nodes
Some MPI systems let you specify the number of nodes upon which your tasks will execute. For example, suppose your program will use sixteen tasks. If you specify four nodes, four tasks would execute on each node.
MPI launcher arguments
If you need to send other arguments to the MPI launcher, enter them here. These arguments are specific to the kind of MPI launcher you are using.
Command line arguments
Use this area to enter command-line arguments that your program will use when it begins executing. Type the arguments as one line within this control.
If you type arguments after your program has begun executing, these arguments are ignored until you restart it.
Environment variables
Use this area to create environment variables that your program will access when it begins executing. You can also use this area to overwrite variables that are passed from your environment.
If you type arguments after your program has begun executing, these arguments are ignored until you restart it.
Adding Programs
This chart shows how many steps are involved in adding a file and where you are in this process.
Debug in TotalView
Tells MemoryScape to open the currently selected process in TotalView. The TotalView process window will display the current state of that process. You must have a TotalView license available to debug in TotalView.
Be aware that opening the TotalView process window from within MemoryScape does not initialize TotalView in the same way as starting TotalView directly. The definitions in your .tvdrc file and your saved breakpoints are not loaded. However, you can load a breakpoint file using the Action Point menu item in the process window. If you need the definitions in your .tvdrc file, start TotalView first and open MemoryScape from within TotalView.
Red Zones
Tells MemoryScape to set the Red Zones option on or off for the selected processes.
The only way to reliably place MemoryScape configuration information into remote processes is to set the TVHEAP_ARGS variable. For information, see the book Debugging Memory Problems on the TotalView documentation page at https://docs.roguewave.com/en/totalview/current/.