# # 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) Apple-added Benchmarks ----------------------- create_file geekbench_stdlib_write getaddrinfo_port getaddrinfo_host getgrgid getgrent getgrnam getppid getpwnam getpwuid getpwent lb_mmtest lm_null_call lmbench_bw_file_rd lmbench_bw_mem lmbench_bw_mmap_rd lmbench_bw_unix lmbench_fstat lmbench_lat_ctx lmbench_lat_sig_catch lmbench_lat_sig_install lmbench_lat_sig_prot lmbench_lat_sig_send lmbench_openclose lmbench_read lmbench_select_file lmbench_select_tcp lmbench_stat lmbench_write mbr_check_service_membership mbr_check_membership od_query_create_with_node trivial vm_allocate Also, please read AppleReadMe for further information.