Torque

From CBLFS
Jump to navigationJump to search
Download Source: http://www.clusterresources.com/downloads/torque/torque-2.2.1.tar.gz

Introduction to Torque

TORQUE is an open source resource manager providing control over batch jobs and distributed compute nodes.

Project Homepage: http://www.clusterresources.com

Dependencies

Recommended

Optional

Configuration Information

There are many configuration options available for Torque. Execute ./configure --help to see the complete list.

--enable-docs: Builds and installs the TORQUE documentation. Man pages will be installed regardless.
--enable-gui: Builds and installs the GUI interfaces xpbs and xpbsmon.
--with-rcp=scp: Causes TORQUE to use scp for remote copy.
--with-tcl=<DIR>: Directory with tclConfig.sh.
--with-tk=<DIR>: Directory with tkConfig.sh.

Non-Multilib

Compile the package:

./configure --prefix=/usr --enable-docs --enable-gui --with-rcp=scp \
--with-tcl=/usr/lib --with-tk=/usr/lib &&
make

Install the package:

make install

Multilib

32Bit

Compile the package:

CC="gcc ${BUILD32}" ./configure --prefix=/usr \
--enable-docs --enable-gui --with-rcp=scp \
--with-tcl=/usr/lib --with-tk=/usr/lib &&
make

Install the package:

make install
mv -v /usr/bin/pbs-config{,-32} &&
ln -svf multiarch_wrapper /usr/bin/pbs-config

N32

Compile the package:

CC="gcc ${BUILDN32}" ./configure --prefix=/usr --libdir=/usr/lib32 \
--enable-docs --enable-gui --with-rcp=scp \
--with-tcl=/usr/lib32 --with-tk=/usr/lib32 &&
make

Install the package:

make install
mv -v /usr/bin/pbs-config{,-n32} &&
ln -svf multiarch_wrapper /usr/bin/pbs-config

64Bit

Compile the package:

CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 \
--enable-docs --enable-gui --with-rcp=scp \
--with-tcl=/usr/lib64 --with-tk=/usr/lib64 &&
make

Install the package:

make install
mv -v /usr/bin/pbs-config{,-64} &&
ln -svf multiarch_wrapper /usr/bin/pbs-config

Configuring

Caution.png

Note

The node acting as the server may also act as a compute node.

First create the server database. Replace weibullguy with your unprivileged user name.

pbs_server -t create
qmgr -c "set server managers = root@localhost"
qmgr -c "set server managers += weibullguy@localhost"
qmgr -c "set server operators += weibullguy@localhost"
qmgr -c "create queue batch"
qmgr -c "set queue batch queue_type = execution"
qmgr -c "set queue batch started = true"
qmgr -c "set queue batch enabled = true"
qmgr -c "set server default_queue = batch"
qmgr -c "set server resources_default.nodes = 1"
qmgr -c "set server scheduling = true"
qmgr -c "set queue batch resources_default.walltime=3600"

Tell the pbs_server which nodes are part of the cluster. Use your cluster machines' hostnames.

cat > $TORQUE_HOME/server_priv/nodes << "EOF"
aragorn np=2
legolas
frodo
EOF

If this is a compute node, tell it which node is running the server. Use your server's hostname.

echo aragorn > $TORQUE_HOME/server_name

If this is a compute node, create a configuration file. This information can be used to specifically request certain nodes. For example, to only run jobs on nodes with CLFS as the operating system, pass the opsys=CLFS to qsub. Replace the <ARCH> and ip address appropriately for your cluster.

cat > $TORQUE_HOME/mom_priv/config << "EOF"
"arch <ARCH>"
"$configversion 0"
“opsys CLFS”

"$loglevel 3"
“$log_file_max_size = 1000”

$pbsserver 172.16.1.100

$status_update_time 300
EOF

Bootscript

If this is a server node, install the init script included in the bootscripts package.

make install-pbsserver

If this is a compute node, install the init script included in the bootscripts package.

make install-momclient

Contents

Installed Directories: /var/spool/torque
Installed Programs: pbs_server, pbs_mom, pbs_sched, xpbs, xpbsmon, qsub
Installed Libraries: libtorque.{a, so}

Short Descriptions

pbs_server is the application that accepts batch jobs and passes them out to the nodes executing pbs_mom.
pbs_mom is the application that accepts work from the pbs_server and returns the results to the head node.
pbs_sched is a lightweight scheduler for batch jobs. Generally a scheduler such as Maui is preferred.
xpbs is the GUI front end to the PBS user and operator commands.
xpbsmon is the GUI front end to the PBS user and operator commands.
qsub is a the queue submission utility.