libMicro icon indicating copy to clipboard operation
libMicro copied to clipboard

A fork of the Sun (Oracle) Solaris based libMicro 0.4.1; see 0.4.1-rh branch.

CDDL HEADER START

The contents of this file are subject to the terms

of the Common Development and Distribution License

(the "License"). You may not use this file except

in compliance with the License.

You can obtain a copy of the license at

src/OPENSOLARIS.LICENSE

or http://www.opensolaris.org/os/licensing.

See the License for the specific language governing

permissions and limitations under the License.

When distributing Covered Code, include this CDDL

HEADER in each file and include the License file at

usr/src/OPENSOLARIS.LICENSE. If applicable,

add the following below this CDDL HEADER, with the

fields enclosed by brackets "[]" replaced with your

own identifying information: Portions Copyright [yyyy]

[name of copyright owner]

CDDL HEADER END

Copyright 2005 Sun Microsystems, Inc. All rights reserved.

Use is subject to license terms.

Building the tarball

As long as cc is in your path, (gcc on Linux),

% tar xf libMicro.tar % make

will build the benchmark suite.

Running the benchmarks

A set of generic scripts to invoke each micro benchmark are created in the bin directory; these may be invoked directly. Note that the actual binaries are created in OS-specific directories; this allows one to build for all varients (x86/sparc/Solaris/Linux) in one place.

To collect a complete set of benchmarks, use the bench script and redirect its output to a file.

% ./bench > output

To compare the output of two or more runs, use multiview in the src directory:

% ./multiview reference compare1 compare2 compare2 > compare.html %

where the reference and compare files contain the output of different libmicro runs.

The compare.html file will allow quick comparisons to be drawn, allowing a variety of experiments to be quickly analyzed.

All benchmarks support the following options:

   [-1] (single process; overrides -P > 1)
   [-A] (align with clock)
   [-B batch-size (default 10)]
   [-C minimum number of samples (default 0)]
   [-D duration in msecs (default 10s)]
   [-E (echo name to stderr)]
   [-H] (suppress headers)
   [-I] specify approx. time per op in nsecs
   [-L] (print argument line)
   [-M] (reports mean rather than median)
   [-N test-name ]
   [-P processes (default 1)]
   [-S] (print detailed stats)
   [-T threads (default 1)]
   [-V] (print the libMicro version and exit)
   [-W] (flag possible benchmark problems)