Kernel-level checkpointing currently works on only systems running the Linux kernel.
You must install the kernel checkpointing API into the kernel;
instructions and links for doing this are available in the package or off the GNU Queue
homepage.
Kernel-level checkpointing has the advantage that jobs do not need to
be recompiled, linked to any special libraries, or written in any special way to be
checkpoint migrated. The API can handle a number of jobs not normally thought
of as being checkpoint-migration capable, such as multi-process jobs, although
not all jobs are checkpoint migratable.
GNU Queue specializes in interactive job balancing, so it is no surprise
that GNU Queue can checkpoint migrate the interactive 'vi' editor using the
checkpointing API. However, not all interactive jobs can be checkpoint migrated.
Consequently, programs should first be tested to see if they can be migrated under
the API.
At the time of this writing, the kernel API support in GNU Queue is in a testing phase.
Details on test-migrating applications can be found in the file `TESTING'.
To enable kernel-API checkpoint migration for a given job queue, run
`configure' and compile GNU Queue versions 1.20.1 and later on a machine that has the API installed in
the kernel and set the following options in the job queue's `profile' file:
checkpointmode 1
restartmode 1
loadcheckpoint value
The checkpointmode specifies the kernel API and the
restartmode enables this host to accept incoming migrators.
loadcheckpoint is the loadaverage at which jobs may be
migrated out (provided another host is willing to accept them). It should be
set to an integer greater than or equal to loadsched ,
the load average at which the job queue refuses to accept new jobs, but less
than loadstop , the load at which all jobs in the queue are
suspended.
werner.krebs@yale.edu |