Saving state data in parallel in a multi-processor system
First Claim
1. A method for saving state data in a multi-processor system, the system including a plurality of software components having state data, the method comprising:
- detecting a problem in a multi-processor system; and
for each processor in the system, spawning a statesave thread directing each processor in parallel to;
a) attempt to identify a component in the system having a status of “
incomplete”
, indicating that state data of the component remains to be offloaded;
b) when a component having a status of “
incomplete”
is identified, execute a statesave code to offload state data from the identified component;
c) upon completion of the state data offload from the identified component, change the status of the component to “
complete”
; and
d) repeat steps a) through c) until no components are identified in the system having a status of “
incomplete”
.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, system and program product save state data in a multi-processor system. A problem in the multi-processor system is detected and a statesave thread is spawned for each processor in the system. Each statesave thread directs a processor, in parallel with the other processors to attempt to identify a component in the system having a status of “incomplete”, indicating that state data of the component remains to be offloaded. When a component having a status of “incomplete” is identified, the processor executes statesave code to offload state data from the identified component. Upon completion of the state data offload from the identified component, the processor changes the status of the component to “complete”. The foregoing processes are repeated until no components are identified in the system having a status of “incomplete”.
11 Citations
18 Claims
-
1. A method for saving state data in a multi-processor system, the system including a plurality of software components having state data, the method comprising:
-
detecting a problem in a multi-processor system; and
for each processor in the system, spawning a statesave thread directing each processor in parallel to;
a) attempt to identify a component in the system having a status of “
incomplete”
, indicating that state data of the component remains to be offloaded;
b) when a component having a status of “
incomplete”
is identified, execute a statesave code to offload state data from the identified component;
c) upon completion of the state data offload from the identified component, change the status of the component to “
complete”
; and
d) repeat steps a) through c) until no components are identified in the system having a status of “
incomplete”
. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A multi-processor system, comprising:
-
a plurality of processors, including a first processor;
a plurality of software components, each logging state data comprising a history of states of the component;
a buffer;
a master thread configured to detect a problem in the system; and
a statesave thread spawned to each of the plurality of processors by the master thread upon detection of a problem and directing each processor, in parallel with each other processor, to;
a) attempt to identify a component in the system having a status of “
incomplete”
, indicating that state data of the component remains to be offloaded;
b) when a component having a status of “
incomplete”
is identified, execute a statesave code to offload state data from the identified component to the buffer;
c) upon completion of the state data offload from the identified component, change the status of the component to “
complete”
; and
d) repeat a) through c) until no components are identified in the system having a status of “
incomplete”
. - View Dependent Claims (9, 10, 11)
-
-
12. A computer program product of a computer readable medium usable with a programmable computer, the computer program product having computer-readable code embodied therein for saving state data in a multi-processor system, the system including a plurality of components having state data, the computer-readable code comprising instructions for:
-
detecting a problem in a multi-processor system; and
for each processor in the system, spawning a statesave thread directing each processor in parallel to;
a) attempt to identify a component in the system having a status of “
incomplete”
, indicating that state data of the component remains to be offloaded;
b) when a component having a status of “
incomplete”
is identified, execute a statesave code to offload state data from the identified component;
c) upon completion of the state data offload from the identified component, change the status of the component to “
complete”
; and
d) repeat steps a) through c) until no components are identified in the system having a status of “
incomplete”
. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
Specification