This is pounder21, as of 2006-01-24.  Copyright (C) 2003-2006 IBM.
The above line is used to detect the pounder release version.  If
you change the line, be sure to update build_scripts/00checklatest.

Licensing
=========
All files in this tarball are licensed under the GPL.  Please see
the file COPYING for more details.

Overview
========
This package is a system stress test.

Unlike the original pounder, pounder21 *does* report pass/fail and
it is NOT infinite.  There is a -k option to kill the tests manually,
though ^C in the pounder terminal works.  With the new scheduler,
one can enforce an order in which tests are run, and even control
which ones get run in parallel.  See SCHEDULER for details.

There are only two prerequisites:

    - Get a CD with some data on it and put in the drive.
      This is used to test optical drives, which are typically
      the only IDE devices on a server.
    - Make sure you can mount an NFS server.  See libpounder.sh for
      config details.

If you downloaded the source tarball, then do this to get started:

    1. Run "./Install" - this builds tests for your machine
       Proceed to step 2.

If you downloaded a binary tarball, then do this to start testing:

    2. Run "./pounder" (see pounder script for usage options) to 
        start the tests

    3. When you want to stop the tests press ^C or run "./pounder -k"

Credits
=======
o Inspired by Sammy Benjamin (sammy@us.ibm.com).  None of his code remains
  in pounder21 today.
o Modifications and additions by members of the LTC xSeries Kernel Team:
    Darrick Wong (djwong@us.ibm.com)
    Chris McDermott (lcm@us.ibm.com)
    Jack Vogel (jfv@us.ibm.com)
    Keith Mannthey (kmannth@us.ibm.com)
    James Cleverdon (jamesclv@us.ibm.com)
    Pat Gaughen (gone@us.ibm.com)
    John Stultz (jstultz@us.ibm.com)
    Roger Mach (bigmach@us.ibm.com)
    Sarunya Jimenez
    Alexis Bruemmer (alexisb@us.ibm.com)
    James Takahashi (jmtt@us.ibm.com)
    Pradeep Kumar (pradeepkumars@in.ibm.com)
    Bhaskar Rangaswamy (bharanga@in.ibm.com)
    Manikandan Chidambaram (cmanikandan@in.ibm.com)
o Other contributers:

Also utilizes:
o memxfer5b, from IBM DeveloperWorks
o Linux kernel's build system.
    http://www.kernel.org
o bonnie++
o The Linux Test Project
o Doug Ledford's (of RH) memtest script
o lame, for MMX/SSE/SSE2/3dnow testing
o nasm, to build lame
o schedutils, to test CPU affinity (with lame)

(note that the above packages are not distributed with pounder
 and are simply installed by the installer script)

Improvements in pounder2
========================
This iteration of pounder you're looking at has been reworked a bit.
First, pounder environment variables are defined in libpounder.sh.
There are a lot more of them than there used to be.

Second, I've attempted to make test integration a bit easier than it
used to be.  There are several new directories; they are detailed below.

build_scripts/   Put a script to build your test in here.
config/          Put config files for your test in here.
src/             Sources packaged with pounder go in here.
opt/             Third party packages (LTP, kernel, etc) go here.
tmp/             Temporary directory for files that a test needs.
test_scripts/    Put a script to run your test in here.
tests/           Symlinks to run the tests in a particular order.
                 See the SCHEDULER documentation file for details.
log/             Logs from pounder runs go here.

Like before, all the tests are run in parallel.

Note that third party test packages (LTP, kernel, etc) aren't packaged
with pounder; the build scripts should download them and build them
as necessary.

The Install Script
==================
The Install script has no options.  Run it to build whatever tests have been
imported into the pounder package.

Configuration
=============
See the Configuration section of the SCHEDULER documentation file for details.
See libpounder.sh for the actual configuration variables.

The pounder Script
==================
The pounder script has the following syntax:

Usage: ./pounder [-l logdir] [-x] [-d duration] [-n ipaddr] [-f] [-u|-r|-k] [-s]

-x      Enable X stress tests.
-d      Run pounder for duration seconds.
-n      Use ipaddr for NFS tests.
-f      Remove pounder pid file before running.
-u      Unmount NFS log storage.
-r      Remount NFS log storage.
-l      Use logdir as the log directory. (You probably want -s too.)
-s      Store logs locally.
-k      Kill pounder.

