Debugging in a cluster processing network
AssigneeMicrosoft Corporation
InventorsPaul Maybee, Daniel Moth, Anitha Panapakkam
Life of this patent
Estimating the term…
Abstract
A technology is described for debugging in a cluster processing network. A scheduler can dispatch a process that is part of the cluster job for execution. Further, a compute node can be used to execute the process dispatched by the scheduler to the compute node. A debugger can be activated in response to an unhandled suspension event in the process on the compute node. In addition, the debugger can send notification messages regarding the unhandled suspension event. A job monitor can receive a notification from the debugger that an unhandled suspension event has occurred. The notification can be displayed to a user via the job monitor.
Claims20
A system for debugging in a cluster processing network, comprising:
- a processor;
- a scheduler operable with the processor to dispatch a process that is part of a cluster job for execution;
- a compute node to execute the process dispatched by the scheduler to the compute node;
- a debugger activated in response to an unhandled suspension event for the process on the compute node, wherein the debugger sends a notification message regarding the unhandled suspension event, the debugger being configured to determine whether the process is part of any cluster job and to deactivate when the process is not part of any cluster job;
- and
- a job monitor to receive the notification message from the debugger that an unhandled suspension event has occurred.
A method for debugging of a process in a cluster job in a cluster processing network, comprising:
- dispatching a process to execute on a compute node using a scheduler;
- executing the process that is part of the cluster job on the compute node;
- activating a debugger on the compute node in response to an unhandled suspension event for the process, the debugger being configured to determine whether the process is part of any cluster job and to deactivate when the process is not part of any cluster job;
- and
- sending a notification from the debugger to a job monitor that an unhandled suspension event has occurred.
A method for just-in-time debugging in a cluster processing network, comprising:
- starting a process on a compute node with just-in-time debugging configuration flags;
- informing an operating system on the compute node that an unhandled exception occurred for a process executing on the compute node;
- starting a just-in-time debugger based on a configuration setting read by the operating system, wherein the just-in-time debugger attaches to the process, the just-in-time debugger being configured to determine whether the process is part of any cluster job and to deactivate when the process is not part of any cluster job;
- reading the just-in-time debugging configuration flags to determine an action for the just-in-time debugger to take;
- and
- sending a message to a job manager that a process which is part of a cluster job is waiting for debugging to begin.
Dependencies are inferred from the claim text.