Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "PTP/designs/debugger launch"

< PTP‎ | designs
(Debugger Launch Process)
(Debugger Launch Process)
Line 1: Line 1:
 
== Debugger Launch Process ==
 
== Debugger Launch Process ==
  
In the following description, the term "debugger client" refers to the Eclipse client side of the parallel debugger. The term "sdm" or "debugger server" refers to the Scalable Debug Manager server side of the parallel debugger.
+
In the following description, the term "debugger client" refers to the Eclipse client side of the parallel debugger. The term "sdm" or "debugger server" refers to the Scalable Debug Manager (SDM) or server side of the parallel debugger.
  
 
When the user hits the debug button, debug launch proceeds as follows:
 
When the user hits the debug button, debug launch proceeds as follows:

Revision as of 13:21, 21 July 2011

Debugger Launch Process

In the following description, the term "debugger client" refers to the Eclipse client side of the parallel debugger. The term "sdm" or "debugger server" refers to the Scalable Debug Manager (SDM) or server side of the parallel debugger.

When the user hits the debug button, debug launch proceeds as follows:

  1. The debugger client is initialized
  2. The job is submitted by calling IResourceManager#submitJob()
  3. Optionally, perform debugger launch help actions

Debugger Initialization

  1. Compute the debugger arguments and save in the DEBUGGER_ARGS launch attribute
  2. Verify that the debugger executable (as specified in the Debugger tab) exists on the target machine

Debug Job Submission

  1. The job is submitted with mode set to "debug". The command submitted is assumed to launch the debugger executable and supply the debugger arguments.

Debugger Launch Help

  1. If the RM has specified "needsDebuggerLaunchHelp" AND the job state changes to RUNNING, the following steps are performed:
  1. A routing file is created that contains the tuples (index, host, port) for each process. The host information is obtained from the IPJob#getProcessNodeId() method (the other values are computed). The routing file is assumed to be in a location that is accessible to all sdm processes.
  2. The sdm master process is launched on the target machine using an IRemoteProcessBuilder.

Back to the top