xpbs - Graphical
Interface to PBS
The xpbs command provides
a user-friendly point-and-click interface to PBS commands. Please see the
sections below for a tour and tutorials. Also, within every dialog box, a
Help button can be found for assistance.
Running xpbs will initially
load preference settings defined by the system administrator in the global
.xpbsrc file. And then it checks the user's ~/.xpbsrc file. This file defines
various X resources like fonts, colors, list of PBS hosts to query, criteria
for listing queues and jobs, and various view states. See Preferences section below for a list of resources that
can be set.
To run xpbs as a regular,
non-privileged user:
setenv DISPLAY <display_host>:0
xpbs
This section describes the main
parts of the xpbs display:
xpbs Main Window
|
Click
here to view a full-size image.
The main window is
composed of 5 distinct areas (subwindows) arranged vertically (one on top
of another) in the following order:
1) Menu 2) Hosts 3) Queues 4) Jobs 5) Info
The Menu area
is composed of a row of command buttons that signal some action with a click
of the left mouse button. The buttons are:
- Update Data Manually - to
update the information on hosts, queues, and jobs.
- Update Data
Auto - same as "Update" except updating is done automatically every <some
specified> number of minutes.
- Submit - for
submitting a job to any of the queues managed by the selected host(s).
- Track Job -
for periodically checking for returned output files of jobs.
- Preferences
- for setting certain parameters such as the list of server host(s) to query.
- Close - for
exiting xpbs plus saving the current setup information
in the user's $HOME/.xpbsrc file. Information saved include the selected
host(s), queue(s), job(s), the different jobs listing criteria, and the
view states (i.e. minimized/maximized) of the Hosts, Queues, and Jobs regions.
- Help - contains
some help information.
The Hosts area is composed
of a leading horizontal HOSTS bar, a listbox, and a set of command buttons.
The HOSTS bar contains a minimize/maximize button, identified by a dot or
a rectangular image, for displaying or getting rid of the Hosts region. The
listbox displays information about favorite server host(s), and each entry
is meant to be selected via a single left mouse button click, shift key
+ mouse button 1 click for contiguous selection, or ctrl key + mouse button
1 click for non-contiguous selection. The command buttons represent actions
on selected host(s), and commonly found buttons are:
- detail - for obtaining detailed
information about selected server host(s). This functionality can also be
achieved by double clicking on an entry in the Hosts listbox.
- terminate -
for terminating PBS servers on selected host(s). (-admin only)
The server hosts
can be chosen by specifying in the ~/.xpbsrc file (or .Xdefaults) the resource:
*serverHosts: hostname1 hostname2 ...
Another way of specifying
the host is to click on the Preferences button in the Menu region, and manipulate
the server Hosts entry widget from the preferences dialog box.
The Queues
area is composed of a leading horizontal QUEUES bar, a listbox, and a set
of command buttons. The QUEUES bar lists the hosts that are consulted when
listing queues; the bar also contains a minimize/maximize button for displaying
or iconizing the Queues region. The listbox displays information about queues
managed by the server host(s) selected from the Hosts listbox; each listbox
entry is meant to be selected (highlighted) via a single left mouse button
click, shift key + mouse button 1 click for contiguous selection, or ctrl
key + mouse button 1 click for non-contiguous selection. The command buttons
represent actions for operating on selected queue(s), and commonly found
buttons are:
- detail - for obtaining detailed
information about selected queue(s). This functionality can also be achieved
by double clicking on a Queues listbox entry.
The Jobs area
is composed of a leading horizontal JOBS bar, a listbox, and a set of command
buttons. The JOBS bar lists the queues that are consulted when listing jobs;
the bar also contains a minimize/maximize button for displaying or iconizing
the Jobs region. The listbox displays information about jobs that are found
in the queue(s) selected from the Queues listbox; each listbox entry is
meant to be selected (highlighted) via a single left mouse button click,
shift key + mouse button 1 click for contiguous selection, or ctrl key +
mouse button 1 click for non-contiguous selection. The region just above
the Jobs listbox shows a collection of command buttons whose labels describe
a corresponding criteria used for filtering the Jobs listbox contents. The
list of jobs can be selected according to the owner of jobs (Owners), job
state (Job_States), name of the job (Job_Name), type of hold placed on the
job (Hold_Types), the account name associated with the job (Account_Name),
checkpoint attribute (Checkpoint), time the job is eligible for queueing/execution
(Queue_Time), resources requested by the job (Resources), priority attached
to the job (Priority), and whether or not the job is rerunnable (Rerunnable).
The selection criteria can be modified by clicking on any of the appropriate
command buttons to bring up a selection box. The criteria command buttons
are accompanied by a "Select Jobs" button, which when clicked, will update
the contents of the Jobs listbox based on the new selection criteria.
Finally, to the
right of the listbox, the Jobs region is accompanied by the following command
buttons, for operating on selected job(s):
- detail - for obtaining detailed
information about selected job(s). This functionality can also be achieved
by double clicking on a Jobs listbox entry.
- modify - for
modifying attributes of the selected job(s).
- delete - for
deleting the selected job(s).
- hold - for placing
some type of hold on selected job(s).
- release - for
releasing held job(s).
- signal - for
sending signals to selected job(s) that are running.
- msg - for writing
a message string into the output streams of the selected job(s).
- move - for moving
selected job(s) into some specified destination queue.
- order - for
exchanging order of two selected jobs in a queue.
- run - for running
selected job(s). (-admin only)
- rerun - for
requeueing selected job(s) that are running. (-admin only)
The Info Area
shows the progress of the commands' executed by xpbs. Look into this
box for errors.
Some of the widgets used in xpbs
and how they are manipulated are described in the following:
- listbox - can be multi-selectable
(a number of entries can be selected/highlighted using a mouse click) or
single-selectable (one entry can be highlighted at a time). For a multi-selectable
listbox, the following operations are allowed:
- single click with mouse button
1 to select/highlight an entry.
- shift key
+ mouse button 1 to contiguously select more than one entry.
- ctrl key
+ mouse button 1 to non-contiguously select more than one entry. NOTE: For
systems running Tk < 4.0, the newly selected item is reshuffled to appear
next to already selected items.
- click the
"Select All/Deselect All" button to select all entries or deselect all entries
at once.
- double clicking
an entry usually activates some action that uses the selected entry as a
parameter.
- scrollbar
- usually appears either vertically or horizontally and contains 5 distinct
areas that are mouse clicked to achieve different effects:
- top arrow - Causes the view
in the associated widget to shift up by one unit (i.e. the object appears
to move down one unit in its window). If the button is held down the action
will auto-repeat.
- top gap
- Causes the view in the associated window to shift up by one less than
the number of units in the window (i.e. the portion of the object that used
to appear at the very top of the window will now appear at the very bottom).
If the button is held down the action will auto-repeat.
- slider -
Pressing button 1 in this area has no immediate effect except to cause the
slider to appear sunken rather than raised. However, if the mouse is moved
with the button down then the slider will be dragged, adjusting the view as
the mouse is moved.
- bottom gap
- Causes the view in the associated window to shift down by one less than
the number of units in the window (i.e. the portion of the object that used
to appear at the very bottom of the window will now appear at the very top).
If the button is held down the action will auto-repeat.
- bottom arrow
- Causes the view in the associated window to shift down by one unit (i.e.
the object appears to move up one unit in its window). If the button is held
down the action will auto-repeat.
- entry
- brought into focus with a click of the left mouse button. To manipulate
this widget, simply type in the text value. Use of arrow keys, mouse selection
of text for deletion or overwrite, copying and pasting with sole use of
mouse buttons are permitted. This widget is usually accompanied by a scrollbar
for horizontally scanning a long text entry string.
- matrix of
entry boxes - usually shown as several rows of entry widgets where a
number of entries (called fields) can be found per row. The matrix is accompanied
by up/down arrow buttons for paging through the rows of data, and each group
of fields gets one scrollbar for horizontally scanning long entry strings.
Moving from field to field can be done using the <Tab>, <Ctrl-f>,
or <Ctrl-b> (move backwards) keys.
- spinbox
- a combination of an entry widget and a horizontal scrollbar. The entry
widget will only accept values that fall within a defined list of valid values,
and incrementing through the valid values is done by clicking on the up/down
arrows.
- button
- a rectangular region appearing either raised or pressed that invokes an
action when clicked with the left mouse button. When the button appears pressed,
then hitting the <RETURN> key will automatically select the button.
- text -
an editor like widget. This widget is brought into focus with a click of the
left mouse button. To manipulate this widget, simply type in the text. Use
of arrow keys, backspace/delete key, mouse selection of text for deletion
or overwrite, copying and pasting with sole use of mouse buttons are permitted.
This widget is usually accompanied by a scrollbar for vertically scanning
a long entry.
Submitting a PBS
job requires only to manipulate the widgets found in the Submit window.
xpbs Main Window
|
Click
here to view a full-size image.
To submit a job, do
the following steps:
- Select a host from the HOSTS
listbox in the main xpbs display.
- Click on the
"Submit" button located in the Menu bar.
- The submit dialog
box is composed of 4 distinct regions:
(1) Job Script (2) OPTIONS (3) OTHER OPTIONS (4) Command Buttons
The Job Script
file region is at the upper left, the OPTIONS region containing various
widgets for setting job attributes is scattered all over the dialog box,
the OTHER OPTIONS is located just below the Job Script file region, and
Command Buttons region is at the bottom.
The job script
region is composed of a header box, the text box, FILE entry box, and a
couple of buttons labeled "load" and "save". If you have a script file containing
PBS options and executable lines, then type the name of the file on the
FILE entry box, and then click on the "load" button. The various widgets
in the Submit window will get loaded with values found in the script file.
The script file text box will only be loaded with executable lines (non-PBS)
found in the script. The job script header box has a "Prefix" entry box
that can be modified to specify the PBS directive to look for when parsing
a script file for PBS options.
If you don't
have a script file, you can start typing the executable lines of the job
in the file text box.
- Start manipulating
the various widgets in the Submit window. Particularly, pay close attention
to the Destination listbox. This box lists all the queues found in the host
that you selected. A special entry called "@host" refers to the default queue
at host. Select appropriately the destination queue of the job. More options
can be found by clicking the OTHER OPTIONS buttons.
- At the bottom
of the Submit window, click "confirm submit". You can also click on "interactive"
to run the job interactively. Running a job interactively will open an xterm
window to your display host containing the session.
NOTE: The script
FILE entry box is accompanied by a "save" button that you click to save
the current widget values to the specified file in a form that can later
be read by xpbs or by the qsub command.
Modifying a PBS job requires
only to manipulate the widgets found in the Modify window. To modify a job
or jobs, do the following steps:
- Select one or more jobs from
the JOBS listbox in the main xpbs display.
- Click on the
"modify" button located to the right of the listbox.
- The Modify window
is structured similarly to the Submit window. Simply manipulate the widgets
to specify replacement or additional values of job attributes.
- Click on the
"confirm modify" button located at the bottom of the dialog box.
Deleting a PBS job requires only
to manipulate the widgets found in the Delete window. To delete a job or
jobs, do the following steps:
- Select one or more jobs from
the JOBS listbox in the main xpbs display.
- Click on the
"delete" button located to the right of the listbox.
- Manipulate the
spinbox widget to set the kill delay signal interval.
- Click on the
"delete" button located at the bottom of the dialog box.
If you want to be informed of
returned output files of current jobs, and be able to quickly see the contents
of those files, then enable the "track job" feature as follows:
- Submit all the jobs that you
want monitored.
- Click on the
"Track Job" button located in the Menu bar to bring up the Track Job dialog
box.
- Specify the list
of user names, whose jobs are to be monitored for returned output files,
in the matrix located at the upper left of the dialog box.
- Manipulate the
minutes spinbox, located just below the user names matrix, to specify the
interval value when output files will be periodically checked.
- Specify the location
of job output files (whether locally or remotely) by clicking on one of the
radio buttons located at the upper right of the dialog box. If the output
files are returned to some remote host, then xpbs will execute an
"RSH <remote_host> test -f <output_files>" to test the existence
of the files.
NOTE: Be sure
the files are accessible from the host where xpbs was run (i.e. .rhosts
appropriately set).
- Click "start
tracking" button located at the bottom of the dialog box to:
- cancel any previous tracking - build a new list of jobs to be monitored for returned output files based on currently queued jobs. - start periodic tracking.
- Click on "close
window" button.
When an output file
for a job being monitored is found, then the "Track Job" button (the one
that originally invoked the Track Job dialog box) will turn into a different
color, and the "Jobs Found Completed" listbox, located in the Track Job dialog
box, is then loaded with the corresponding job id(s). Then click on a job
id to see the contents of the output file and the error file. Click "stop
tracking" if you want to cancel tracking.
Click on the Close button located
in the Menu bar to leave xpbs. It will bring up a dialog box asking
for a confirmation in regards to saving state information like the view
states (minimize/maximize) of the HOSTS, QUEUES, and JOBS subwindows, and
various criteria for listing queues and jobs. The information is saved in
~/.xpbsrc file.
The resources that can be set
in the X resources file, ~/.xpbsrc, are:
*serverHosts list of server hosts (space separated) to query by xpbs.
*xtermCmd the xterm command to run driving an interactive PBS session.
*labelFont font applied to text appearing in labels.
*fixlabelFont font applied to text that label fixed-width widgets such as listbox labels. This must be a fixed-width font.
*textFont font applied to a text widget. Keep this as fixed-width font.
*backgroundColor the color applied to background of frames, buttons, entries, scrollbar handles.
*foregroundColor the color applied to text in any context (under selection, insertion, etc...).
*activeColor the color applied to the background of a selection, a selected command button, or a selected scroll bar handle.
*disabledColor color applied to a disabled widget.
*signalColor color applied to buttons that signal something to the user about a change of state. For example, the color of the "Track Job" button when returned output files are detected.
*shadingColor a color shading applied to some of the frames to emphasize focus as well as decoration.
*selectorColor the color applied to the selector box of a radiobutton or checkbutton.
*selectHosts list of hosts (space separated) to automatically select/highlight in the HOSTS listbox.
*selectQueues list of queues (space separated) to automatically select/highlight in the QUEUES listbox.
*selectJobs list of jobs (space separated) to automatically select/highlight in the JOBS listbox.
*selectOwners list of owners (space separated) checked when limiting the jobs appearing on the Jobs listbox in the main xpbs
window. See -j option in qselect(1B) for format.
*selectStates list of job states to look for (do not space separate) when limiting the jobs appearing on the Jobs listbox in the main xpbs window. See -s option in qselect(1B) for format.
*selectRes list of resource amounts (space separated) to consult when limiting the jobs appearing on the Jobs listbox in the main xpbs window. See -l option in qselect(1B) for format.
*selectExecTime the Execution Time attribute to consult when limiting the list of jobs appearing on the Jobs listbox in the main xpbs window. See -a option in qselect(1B) for format.
*selectAcctName the name of the account that will be checked when limiting the jobs appearing on the Jobs listbox in the main xpbs window. See -A option in qselect(1B) for format.
*selectCheckpoint the checkpoint attribute relationship (including the logical operator) to consult when limiting the list of jobs appearing on the Jobs listbox in the main xpbs
window. See -c option in qselect(1B) for format.
*selectHold the hold types string to look for in a job when limiting the jobs appearing on the Jobs listbox in the main xpbs window. See -h option in qselect(1B) for format.
*selectPriority the priority relationship (including the logical operator) to consult when limiting the list of jobs appearing on the Jobs listbox in the main xpbs window. See -p option in qselect(1B) for format.
*selectRerun the rerunnable attribute to consult when limiting the list of jobs appearing on the Jobs listbox in the main xpbs window. See -r option in qselect(1B) for format.
*selectJobName name of the job that will be checked when limiting the jobs appearing on the Jobs listbox in the main xpbs
window. See -N option in qselect(1B) for format.
*iconizeHostsView a boolean value (true or false) indicating whether or not to iconize the HOSTS region.
*iconizeQueuesView a boolean value (true or false) indicating whether or not to iconize the QUEUES region.
*iconizeJobsView a boolean value (true or false) indicating whether or not to iconize the JOBS region.
xpbs calls PBS commands
as follows:
Command Button PBS Command -------------- -----------
detail (Hosts) qstat -B -f <selected server_host(s)> terminate qterm <selected server_host(s)> detail (Queues) qstat -Q -f <selected queue(s)> stop qstop <selected queue(s)> start qstart <selected queue(s)> enable qenable <selected queue(s)> disable qdisable <selected queue(s)> detail (Jobs) qstat -f <selected job(s)> modify qalter <selected job(s)> delete qdel <selected job(s)> hold qhold <selected job(s)> release qrls <selected job(s)> run qrun <selected job(s)> rerun qrerun <selected job(s)> signal qsig <selected job(s)> msg qmsg <selected job(s)> move qmove <selected job(s)> order qorder <selected job(s)>
|