CPU2006 Flag Description
Fujitsu Siemens Computers CELSIUS V840, AMD Opteron 2346 HE (1.8 GHz)

Copyright © 2008 The Portland Group, Inc. (for PGI compilers)
Copyright © 2008 PathScale LLC (for PathScale Compiler Suite)

Base Compiler Invocation

C benchmarks

C++ benchmarks

Fortran benchmarks

Benchmarks using both Fortran and C


Peak Compiler Invocation

C benchmarks (except as noted below)

470.lbm

C++ benchmarks (except as noted below)

444.namd

Fortran benchmarks (except as noted below)

459.GemsFDTD

Benchmarks using both Fortran and C


Base Portability Flags

410.bwaves

416.gamess

433.milc

434.zeusmp

435.gromacs

436.cactusADM

437.leslie3d

444.namd

447.dealII

450.soplex

453.povray

454.calculix

459.GemsFDTD

465.tonto

470.lbm

481.wrf

482.sphinx3


Peak Portability Flags

410.bwaves

416.gamess

433.milc

434.zeusmp

435.gromacs

436.cactusADM

437.leslie3d

444.namd

453.povray

454.calculix

459.GemsFDTD

465.tonto

470.lbm

481.wrf

482.sphinx3


Base Optimization Flags

C benchmarks

C++ benchmarks

Fortran benchmarks

Benchmarks using both Fortran and C


Peak Optimization Flags

C benchmarks

433.milc

470.lbm

482.sphinx3

C++ benchmarks

444.namd

447.dealII

450.soplex

453.povray

Fortran benchmarks

410.bwaves

416.gamess

434.zeusmp

437.leslie3d

459.GemsFDTD

465.tonto

Benchmarks using both Fortran and C

435.gromacs

436.cactusADM

454.calculix

481.wrf


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.


System and Other Tuning Information

One or more of the following settings may have been set. If so, the corresponding notes sections of the report will say so; and you can read below to find out more about what these settings mean.

Environment Variables

MP_BIND

This Environment Variable controls the runtime behavior of binaries compiled with the PGI compilers.
It can be set to yes or y to bind processes or threads executing in a parallel region to physical processors, or to no or n to disable such binding. The default is to not bind processes to processors.
This is an execution time environment variable interpreted by the PGI runtime support libraries. It does not affect the behavior of the PGI compilers in any way. Note: the MP_BIND environment variable is not supported on all platforms.

MP_BLIST

This Environment Variable controls the runtime behavior of binaries compiled with the PGI compilers.
In addition to the MP_BIND variable, it is possible to define the thread-CPU relationship. For example, setting MP_BLIST=3,2,1,0 maps CPUs 3, 2, 1 and 0 to threads 0, 1, 2 and 3 respectively.

OMP_NUM_THREADS

This Environment Variable controls the runtime behavior of binaries compiled with the PGI and PathScale compilers.
This Environment Variable sets the maximum number of threads to use for OpenMP* parallel regions if no other value is specified in the application. This environment variable applies to both -openmp and -parallel (Linux and Mac OS X) or /Qopenmp and /Qparallel (Windows). Example syntax on a Linux system with 8 cores:
export OMP_NUM_THREADS=8
Default is the number of cores visible to the OS.

PGI_HUGE_PAGES

This Environment Variable controls the runtime behavior of binaries compiled with the PGI compilers.
The maximum number of huge pages an application is allowed to use can be set at run time via the environment variable PGI_HUGE_PAGES. If not set, then the process may use all available huge pages when compiled with "-Msmartalloc=huge" or a maximum of n pages where the value of n is set via the compile time flag "-Msmartalloc=huge:n."

KMP_AFFINITY

KMP_AFFINITY = < physical | logical >, starting-core-id
This Environment Variable specifies the static mapping of user threads to physical cores, for example, if you have a system configured with 8 cores, OMP_NUM_THREADS=8 and KMP_AFFINITY=physical,2. Thread 0 will mapped to core 2, thread 1 will be mapped to core 3, and so on in a round-robin fashion.

Linux commands

ulimit -s < n | unlimited >

This Linux command (a bash builtin command) sets the stack size to n kbytes, or unlimited to allow the stack size to grow without limit.

ulimit -l < n | unlimited >

This Linux command (a bash builtin command) sets the maximum size of memory that may be locked into physical memory.

numactl -m nodes --physcpubind=cpus command

numactl runs processes with a specific NUMA scheduling or memory placement policy. The policy is set for command and inherited by all of its children. The arguments used here are:

numactl has many more options which are not described here since they are not used.

SPEC config file feature submit

submit = echo "$command" >run.sh ; $BIND bash run.sh

When running multiple copies of benchmarks, the SPEC config file feature submit is sometimes used to cause individual jobs to be bound to specific processors. This specific submit command is used for Linux. The description of the elements of the command are:

Linux Huge Page settings

In order to take full advantage of using PGI's huge page runtime library, your system must be configured to use huge pages. It is safe to run binaries compiled with "-Msmartalloc=huge" on systems not configured to use huge pages, however, you will not benefit from the performance improvements huge pages offer. To configure your system for huge pages perform the following steps:

Note that further information about huge pages may be found in your Linux documentation file: /usr/src/linux/Documentation/vm/hugetlbpage.txt


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.

The flags file that was used to format this result can be browsed at
http://www.spec.org/cpu2006/flags/fsc-mix-pgi-path.html.

You can also download the XML flags source by saving the following link:
http://www.spec.org/cpu2006/flags/fsc-mix-pgi-path.xml.


For questions about the meanings of these flags, please contact the tester.
For other inquiries, please contact webmaster@spec.org
Copyright 2006-2014 Standard Performance Evaluation Corporation
Tested with SPEC CPU2006 v1.0.
Report generated on Tue Jul 22 19:55:53 2014 by SPEC CPU2006 flags formatter v6906.