To stop a PCT either of the following will work:
In the event that a PCT terminates without the knowledge of the bebopd, or you just don't want the bebopd to allocate the node it is running on, you may use pingd to notify the bebopd that the PCT is gone. If the PCT on node 12 has terminated, enter:
pingd -gone -l 12
You must be user root or in group bebop to issue a gone command to pingd.
To restart a PCT, simply start it again on the compute node. It will send an update to the bebopd and rejoin the virtual machine.
To force a PCT to send an update message to the bebopd, send the PCT a SIGHUP. If the bebopd had considered the node to be gone, it will now include it again in the virtual machine.
What if a PCT terminates while hosting a member of a parallel application? The member process will continue to execute. It is not impacted by the disappearance of the PCT. It is best not to restart a PCT on the node until the parallel application finishes. The new PCT would not know about the application process and would announce itself to the bebopd as ready to run a job.
Note that in this situation there is no PCT to catch the termination of the user process, so yod will never receive a message that the application is done on that node. It will be necessary for the user to note through other evidence that the application is done and then terminate yod with control-C. (For instance, output data files are completed, or pingd shows all the other processes are done, or simply rsh compute-node-name ps ax.) Also, pingd will not return any status information for the node on which the PCT went away, because pingd gets it's information from the PCT by way of the bebopd.
In this situation (where the PCT is killed when an application is running) it will most likely be necessary to run pingd -reset to reset the other PCTs to free status after the application is done.