Compilers: Sun Studio 11
Operating systems: Solaris 10
Last updated: 18-Jul-2006 cds
The text for many of the descriptions below was taken from the Sun Studio 11 Compiler Documentation, which is copyright © 2005 Sun Microsystems, Inc. The original documentation can be found at docs.sun.com.
Invoke the Sun Studio C Compiler.
Invoke the Sun Studio C++ Compiler
Invoke the Sun Studio C Compiler.
Invoke the Sun Studio C++ Compiler
This macro indicates that the benchmark is being compiled on a SPARC/Solaris system.
SPEC_CPU_SOLARIS is used so that SUN submitters don't have to bother specifying SPEC_CPU_HAVE_BOOL. It sets HAVE__BOOL, and also includes alloca.h.
Enables portability changes for Solaris
This flag can be set for SPEC compilation for Solaris using default compiler.
This macro indicates that the benchmark is being compiled on a SPARC/Solaris system.
SPEC_CPU_SOLARIS is used so that SUN submitters don't have to bother specifying SPEC_CPU_HAVE_BOOL. It sets HAVE__BOOL, and also includes alloca.h.
Enables portability changes for Solaris
This flag can be set for SPEC compilation for Solaris using default compiler.
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g is present. At -xO4 or higher, full optimization is performed, even when -g is present.
A convenience option, this switch selects several other options that are described in this file.
Perform optimizations across all object files in the link step:
At -xipo=2, the compiler performs inter-procedural aliasing analysis as well as optimization of memory allocation and layout to improve cache performance.
Set the preferred page size for running the program.
Control the level of searching that the compiler does for prefetch opportunities by setting n to 1, 2, or 3, where higher numbers mean to do more searching. The default for Fortran is 2. The default for C and C++ is 1.
Include a library containing chip-specific memory routines.
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g0 is present. At -xO4 or higher, full optimization is performed, even when -g0 is present.
Use STLport's Standard Library implementation instead of the default libCstd.
A convenience option, this switch selects several other options that are described in this file.
Perform optimizations across all object files in the link step:
At -xipo=2, the compiler performs inter-procedural aliasing analysis as well as optimization of memory allocation and layout to improve cache performance.
Set the preferred page size for running the program.
Control the level of searching that the compiler does for prefetch opportunities by setting n to 1, 2, or 3, where higher numbers mean to do more searching. The default for Fortran is 2. The default for C and C++ is 1.
Analyze loops for inter-iteration data dependencies, and do loop restructuring.
Allows the compiler to perform type-based alias analysis:
Include a library containing chip-specific memory routines.
This library provides faster versions of some common functions, such as malloc/free and bcopy.
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g is present. At -xO4 or higher, full optimization is performed, even when -g is present.
Collect profile data for feedback-directed optimization. If an option directory is named, the feedback will be stored there.
Use data collected for profile feedback. If an option directory is named, look for the feedback data there.
A convenience option, this switch selects several other options that are described in this file.
Set the preferred page size for running the program.
Allows the compiler to perform type-based alias analysis at the specified alias level:
Specifies the degree of conformance with the ISO C standard: -Xc indicates strict conformance, whereas -Xa indicates ISO C plus some K&R compatibility extensions.
Perform optimizations across all object files in the link step:
At -xipo=2, the compiler performs inter-procedural aliasing analysis as well as optimization of memory allocation and layout to improve cache performance.
This library provides faster versions of some common functions, such as malloc/free and bcopy.
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g is present. At -xO4 or higher, full optimization is performed, even when -g is present.
Collect profile data for feedback-directed optimization. If an option directory is named, the feedback will be stored there.
Use data collected for profile feedback. If an option directory is named, look for the feedback data there.
A convenience option, this switch selects several other options that are described in this file.
Set the preferred page size for running the program.
Allows the compiler to perform type-based alias analysis at the specified alias level:
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g is present. At -xO4 or higher, full optimization is performed, even when -g is present.
Collect profile data for feedback-directed optimization. If an option directory is named, the feedback will be stored there.
Use data collected for profile feedback. If an option directory is named, look for the feedback data there.
A convenience option, this switch selects several other options that are described in this file.
Set the preferred page size for running the program.
Perform optimizations across all object files in the link step:
At -xipo=2, the compiler performs inter-procedural aliasing analysis as well as optimization of memory allocation and layout to improve cache performance.
Allows the compiler to perform type-based alias analysis at the specified alias level:
Control the level of searching that the compiler does for prefetch opportunities by setting n to 1, 2, or 3, where higher numbers mean to do more searching. The default for Fortran is 2. The default for C and C++ is 1.
Include a library containing chip-specific memory routines.
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g is present. At -xO4 or higher, full optimization is performed, even when -g is present.
A convenience option, this switch selects several other options that are described in this file.
Set the preferred page size for running the program.
Control the level of searching that the compiler does for prefetch opportunities by setting n to 1, 2, or 3, where higher numbers mean to do more searching. The default for Fortran is 2. The default for C and C++ is 1.
Treat pointer-valued function parameters as restricted pointers.
Allows the compiler to perform type-based alias analysis at the specified alias level:
This library provides faster versions of some common functions, such as malloc/free and bcopy.
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g is present. At -xO4 or higher, full optimization is performed, even when -g is present.
Collect profile data for feedback-directed optimization. If an option directory is named, the feedback will be stored there.
Use data collected for profile feedback. If an option directory is named, look for the feedback data there.
A convenience option, this switch selects several other options that are described in this file.
Set the preferred page size for running the program.
Allows the compiler to perform type-based alias analysis at the specified alias level:
Treat pointer-valued function parameters as restricted pointers.
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g is present. At -xO4 or higher, full optimization is performed, even when -g is present.
A convenience option, this switch selects several other options that are described in this file.
Set the preferred page size for running the program.
Perform optimizations across all object files in the link step:
At -xipo=2, the compiler performs inter-procedural aliasing analysis as well as optimization of memory allocation and layout to improve cache performance.
Allows the compiler to perform type-based alias analysis at the specified alias level:
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g is present. At -xO4 or higher, full optimization is performed, even when -g is present.
Collect profile data for feedback-directed optimization. If an option directory is named, the feedback will be stored there.
Use data collected for profile feedback. If an option directory is named, look for the feedback data there.
A convenience option, this switch selects several other options that are described in this file.
Set the preferred page size for running the program.
Perform optimizations across all object files in the link step:
At -xipo=2, the compiler performs inter-procedural aliasing analysis as well as optimization of memory allocation and layout to improve cache performance.
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g is present. At -xO4 or higher, full optimization is performed, even when -g is present.
Collect profile data for feedback-directed optimization. If an option directory is named, the feedback will be stored there.
Use data collected for profile feedback. If an option directory is named, look for the feedback data there.
A convenience option, this switch selects several other options that are described in this file.
Set the preferred page size for running the program.
Control the level of searching that the compiler does for prefetch opportunities by setting n to 1, 2, or 3, where higher numbers mean to do more searching. The default for Fortran is 2. The default for C and C++ is 1.
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g is present. At -xO4 or higher, full optimization is performed, even when -g is present.
Collect profile data for feedback-directed optimization. If an option directory is named, the feedback will be stored there.
Use data collected for profile feedback. If an option directory is named, look for the feedback data there.
A convenience option, this switch selects several other options that are described in this file.
Set the preferred page size for running the program.
Perform optimizations across all object files in the link step:
At -xipo=2, the compiler performs inter-procedural aliasing analysis as well as optimization of memory allocation and layout to improve cache performance.
Allows the compiler to perform type-based alias analysis at the specified alias level:
Include a library containing chip-specific memory routines.
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g0 is present. At -xO4 or higher, full optimization is performed, even when -g0 is present.
Use STLport's Standard Library implementation instead of the default libCstd.
Collect profile data for feedback-directed optimization. If an option directory is named, the feedback will be stored there.
Use data collected for profile feedback. If an option directory is named, look for the feedback data there.
A convenience option, this switch selects several other options that are described in this file.
Set the preferred page size for running the program.
Analyze loops for inter-iteration data dependencies, and do loop restructuring.
Allows the compiler to perform type-based alias analysis:
Perform optimizations across all object files in the link step:
At -xipo=2, the compiler performs inter-procedural aliasing analysis as well as optimization of memory allocation and layout to improve cache performance.
[code generator flag]
Control irregular loop prefetching; sets the prefetch look ahead distance, in bytes. The default is 256.
Control the level of searching that the compiler does for prefetch opportunities by setting n to 1, 2, or 3, where higher numbers mean to do more searching. The default for Fortran is 2. The default for C and C++ is 1.
This library provides faster versions of some common functions, such as malloc/free and bcopy.
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g0 is present. At -xO4 or higher, full optimization is performed, even when -g0 is present.
Use STLport's Standard Library implementation instead of the default libCstd.
Collect profile data for feedback-directed optimization. If an option directory is named, the feedback will be stored there.
Use data collected for profile feedback. If an option directory is named, look for the feedback data there.
A convenience option, this switch selects several other options that are described in this file.
Set the preferred page size for running the program.
Analyze loops for inter-iteration data dependencies, and do loop restructuring.
Allows the compiler to perform type-based alias analysis:
Perform optimizations across all object files in the link step:
At -xipo=2, the compiler performs inter-procedural aliasing analysis as well as optimization of memory allocation and layout to improve cache performance.
Control the level of searching that the compiler does for prefetch opportunities by setting n to 1, 2, or 3, where higher numbers mean to do more searching. The default for Fortran is 2. The default for C and C++ is 1.
Generate indirect prefetches for data arrays accessed indirectly.
This library provides faster versions of some common functions, such as malloc/free and bcopy.
Includes symbols in the executable. If the optimization level is -xO3 or lower, some optimizations may be disabled when -g0 is present. At -xO4 or higher, full optimization is performed, even when -g0 is present.
Use STLport's Standard Library implementation instead of the default libCstd.
Collect profile data for feedback-directed optimization. If an option directory is named, the feedback will be stored there.
Use data collected for profile feedback. If an option directory is named, look for the feedback data there.
A convenience option, this switch selects several other options that are described in this file.
Set the preferred page size for running the program.
Analyze loops for inter-iteration data dependencies, and do loop restructuring.
Allows the compiler to perform type-based alias analysis:
Control the level of searching that the compiler does for prefetch opportunities by setting n to 1, 2, or 3, where higher numbers mean to do more searching. The default for Fortran is 2. The default for C and C++ is 1.
Specify the -xjobs option to set how many processes the compiler creates to complete its work. Currently, -xjobs works only with the -xipo option. When you specify -xjobs=n, the interprocedural optimizer uses n as the maximum number of code generator instances it can invoke to compile different files.
Directs the compiler to print the name and version ID of each component as the compiler executes.
Turns on verbose mode, showing how command options expand. Shows each component as it is invoked.
Specify the -xjobs option to set how many processes the compiler creates to complete its work. Currently, -xjobs works only with the -xipo option. When you specify -xjobs=n, the interprocedural optimizer uses n as the maximum number of code generator instances it can invoke to compile different files.
Controls compiler verbosity. There are several values that can be used with this flag:
The default is -verbose=%none.
Specify the -xjobs option to set how many processes the compiler creates to complete its work. Currently, -xjobs works only with the -xipo option. When you specify -xjobs=n, the interprocedural optimizer uses n as the maximum number of code generator instances it can invoke to compile different files.
Directs the compiler to print the name and version ID of each component as the compiler executes.
Turns on verbose mode, showing how command options expand. Shows each component as it is invoked.
Specify the -xjobs option to set how many processes the compiler creates to complete its work. Currently, -xjobs works only with the -xipo option. When you specify -xjobs=n, the interprocedural optimizer uses n as the maximum number of code generator instances it can invoke to compile different files.
Controls compiler verbosity. There are several values that can be used with this flag:
The default is -verbose=%none.
This section contains descriptions of flags that were included implicitly by other flags, but which do not have a permanent home at SPEC.
Allows the compiler to assume that your code does not rely on setting of the errno variable.
Assume data is naturally aligned.
Selects faster (but nonstandard) handling of floating point arithmetic exceptions and gradual underflow.
Controls simplifying assumptions for floating point arithmetic:
Evaluate float expressions as single precision.
Turns off all IEEE 754 trapping modes.
Allows the compiler to perform type-based alias analysis at the specified alias level:
Substitute intrinsic functions or inline system functions where profitable for performance.
Analyze loops for inter-iteration data dependencies, and do loop restructuring.
Use inline expansion for math library, libm.
Specify optimization level n:
Allow generation of prefetch instructions. -xprefetch=yes and -xprefetch are synonyms for -xprefetch=auto,explicit.
Selects options appropriate for the system where the compile is taking place, including architecture, chip, and cache sizes. (These can also be controlled separately, via -xarch, -xchip, and -xcache, respectively.)
Select the optimized math library.
Platform settings
One or more of the following settings may have been applied to the testbed. If so, the "Platform Notes" section of the report will say so; and you can read below to find out more about what these settings mean.
autoup=<n> (Unix)
When the file system flush daemon fsflush runs, it writes to disk all modified file buffers that are more
than n seconds old.
cpu_bringup_set=<n> (Unix /etc/system)
Specifies which processors are enabled at boot time. <n> represents a bitmap of the
processors to be brought online.
disablecomponent (System Management Services)
This command can be used prior to booting the system for a 1-cpu test. The tester uses disablecomponent to
add all other CPUs to the "blacklist", which is a list of components that cannot be used at boot time.
LD_LIBRARY_PATH=<directories> (linker)
LD_LIBRARY_PATH controls the search order for both the compile-time and run-time linkers. Usually, it can be
defaulted; but testers may sometimes choose to explicitly set it (as documented in the notes in the submission), in order to
ensure that the correct versions of libraries are picked up.
PARALLEL=<n> (Unix)
If programs have been compiled with -xautopar, this environment variable can be set to the number of
processors that programs should use.
STACKSIZE=<n> (Unix)
Set the size of the stack (temporary storage area) for each slave thread of a multithreaded program.
submit=echo 'pbind -b...' > dobmk; sh dobmk (SPEC tools, Unix)
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. If so, the specific command may be found in the config file; here
is a brief guide to understanding that command:
tune_t_fsflushr=<n> (Unix)
Controls the number of seconds between runs of the file system flush daemon, fsflush.
ulimit -s <n> (Unix)
Sets the stack size to n kbytes, or "unlimited" to allow the stack size to grow without limit.
Flag description origin markings:
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 v90.
Report generated on Tue Jul 22 09:58:54 2014 by SPEC CPU2006 flags formatter v6906.