CPU2006 Flag Description
System Vendor System Model Name

Test sponsored by Test Sponsor (Optional, defaults to hw_vendor)

Compilers: gcc 4.1.2 (AMD64)

Compilers: gcc 4.3 (AMD64)

Compilers: gcc 4.4 (AMD64)

Compilers: gcc 4.6 (AMD64)

This file contains information about the GNU gcc compiler, reformatted for SPEC result reporting, excerpted and/or summarized from the GNU documentation and from Apple's Mac OS X man pages.

The Copyright notice from the Mac OS X page for 'man gcc' lists:
Copyright (c) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.

SPEC's modifications are:
Copyright (C) 2006-2011 Standard Performance Evaluation Corporation

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with the Invariant Sections being "GNU General Public License" "Funding Free Software", the Front-Cover texts being (a) (see below), and with the Back-Cover Texts being (b) (see below). A copy of the license is included on your SPEC media as redistributable_sources/licences/fdl-1.2.txt
and the "Funding Free Software" section is on your SPEC media as
redistributable_sources/licences/fsf-funding.txt

(a) The FSF's Front-Cover Text is:

A GNU Manual

(b) The FSF's Back-Cover Text is:

You have freedom to copy and modify this GNU Manual, like GNU software. Copies published by the Free Software Foundation raise funds for GNU development.


Base Unknown Flags

400.perlbench (base)

401.bzip2 (base)

403.gcc (base)

429.mcf (base)

445.gobmk (base)

456.hmmer (base)

458.sjeng (base)

462.libquantum (base)

464.h264ref (base)

471.omnetpp (base)

473.astar (base)

483.xalancbmk (base)


Base Compiler Invocation

C++ benchmarks


Base Portability Flags

400.perlbench

401.bzip2

403.gcc

429.mcf

445.gobmk

456.hmmer

458.sjeng

462.libquantum

464.h264ref

471.omnetpp

473.astar

483.xalancbmk


Base Optimization Flags

C benchmarks

C++ benchmarks


Implicitly Included Flags

This section contains descriptions of flags that were included implicitly by other flags, but which do not have a permanent home at SPEC.


Commands and Options Used to Submit Benchmark Runs

Using numactl to bind processes and memory to cores

For multi-copy runs or single copy runs on systems with multiple sockets, it is advantageous to bind a process to a particular core. Otherwise, the OS may arbitrarily move your process from one core to another. This can effect performance. To help, SPEC allows the use of a "submit" command where users can specify a utility to use to bind processes. We have found the utility 'numactl' to be the best choice.

numactl runs processes with a specific NUMA scheduling or memory placement policy. The policy is set for a command and inherited by all of its children. The numactl flag "--physcpubind" specifies which core(s) to bind the process. "-l" instructs numactl to keep a process memory on the local node while "-m" specifies which node(s) to place a process memory. For full details on using numactl, please refer to your Linux documentation, 'man numactl'

Note that some versions of numactl, particularly the version found on SLES 10, we have found that the utility incorrectly interprets application arguments as it's own. For example, with the command "numactl --physcpubind=0 -l a.out -m a", numactl will interpret a.out's "-m" option as it's own "-m" option. To work around this problem, a user can put the command to be run in a shell script and then run the shell script using numactl. For example: "echo 'a.out -m a' > run.sh ; numactl --physcpubind=0 bash run.sh"


Shell, Environment, and Other Software Settings

ulimit -s <n>

Sets the stack size to n kbytes, or unlimited to allow the stack size to grow without limit.


Flag description origin markings:

[user] Indicates that the flag description came from the user flags file.
[suite] Indicates that the flag description came from the suite-wide flags file.
[benchmark] Indicates that the flag description came from a per-benchmark flags file.

For questions about the meanings of these flags, please contact the tester.
For other inquiries, please contact webmaster@spec.org
Copyright 2006-2024 Standard Performance Evaluation Corporation
Tested with SPEC CPU2006 v1.2.
Report generated on Wed May 8 12:23:43 2024 by SPEC CPU2006 flags formatter v6417.