------------------------------------------------------------------ Intel (R) C++/Fortran compiler options, compilers 9.1 ------------------------------------------------------------------ NAME icc - invokes the Intel(R) C++ compiler ifort - invokes the Intel(R) Fortran Compiler OPTIONS -O1 Optimize to favor code size and code locality. Disables loop unrolling. -O1 may improve perfor- mance for applications with very large code size, many branches, and execution time not dominated by code within loops. In most cases, -O2 is recom- mended over -O1. Itanium architecture-based systems: Disables soft- ware pipelining and global code scheduling. -O2 (DEFAULT) Optimize for code speed. This is the generally rec- ommended optimization level. Itanium architecture-based systems: Turns software pipelining ON. -O3 Enable -O2 optimizations and in addition, enable more aggressive optimizations such as loop and mem- ory access transformation, and prefetching. The -O3 option optimizes for maximum speed, but may not improve performance for some programs. The -O3 optimizations may slow down code in some cases com- pared to -O2 optimizations. Recommended for appli- cations that have loops with heavy use of floating point calculations and process large data sets. -fast The -fast option maximizes speed across the entire program. It sets the following command options that can improve run-time performance:-O3, -ipo, and -static. -auto-ilp32 Specifies that the application should run within a 32-bit address space. Also tells the compiler to use 32-bit pointers whenever possible. To use this option, you must specify -ipo. -[no-]ansi-alias The -ansi-alias option directs the compiler to assume that the program adheres to the rules defined in the ISO C Standard. If your program adheres to these rules, then this option will allow the compiler to optimize more aggressively. If it doesn't adhere to these rules, then it can cause the compiler to generate incorrect code. -[no-]IPF-fp-relaxed Enable [disable] use of faster but slightly less accurate code sequences for math functions, such as divide and square root. -prof-gen[x] Instruct the compiler to produce instrumented code in your object files in preparation for instrumented execution. With the x qualifier, extra information is gathered. This option is used in Phase 1 of PGO to instruct the compiler to produce instrumented code in your object files in prepara- tion for instrumented execution. Parallel make is automatically supported for -prof-genx compila- tions. -prof-use Instruct the compiler to produce a profile-opti- mized executable and merge available dynamic infor- mation (.dyn) files into a pgopti.dpi file. Use the -prof-use option in Phase 3 of PGO. -static Prevent linking with shared libraries. Causes the executable to link all libraries statically, as opposed to dynamically. -include file Process file as if "#include "file" appeared as the first line of the primary source file. However, the first directory searched for file is the preproces- sor's working directory instead of the directory containing the main source file.If not found there, it is searched for in the remainder of the "#inclu- de "..."" search chain as normal. If multiple -include options are given, the files are included in the order they appear on the comman d line. ENVIRONMENT VARIABLES LD_LIBRARY_PATH Specifies the location for all Intel-provided libraries. The LD_LIBRARY_PATH environment variable contains a colon-separated list of directories in which the linker will search for library (.a) files. If you want the linker to search additional libraries, you can add their names to LD_LIBRARY_PATH, to the command line, to a response file, or to the configuration file. In each case, the names of these libraries are passed to the linker before the names of the Intel libraries that the driver always specifies. PATH Specifies the directories the system searches for binary executable files. PROF_DIR Specifies the directory in which dynamic informa- tion files are created. This variable applies to all three phases of the profiling process. PROF_NO_CLOBBER Alters the feedback compilation phase slightly. By default, during the feedback compilation phase, the compiler merges the data from all dynamic informa- tion files and creates a new pgopti.dpi file if .dyn files are newer than an existing pgopti.dpi file. When this variable is set, the compiler does not overwrite the existing pgopti.dpi file. Instead, the compiler issues a warning and you must remove the pgopti.dpi file if you want to use addi- tional dynamic information files. COPYRIGHT INFORMATION Copyright (C) 2002 - 2006, Intel Corporation. All rights reserved. * Other brands and names are the property of their respective owners. ------------------------------------------------------------------ taskset ------------------------------------------------------------------ NAME taskset - retrieve or set a processes's CPU affinity SYNOPSIS taskset [options] [mask | list ] [pid | command [arg]...] DESCRIPTION taskset is used to set or retrieve the CPU affinity of a running process given its PID or to launch a new COM- MAND with a given CPU affinity. CPU affinity is a scheduler property that "bonds" a process to a given set of CPUs on the system. The Linux scheduler will honor the given CPU affinity and the process will not run on any other CPUs. Note that the Linux scheduler also supports natural CPU affinity: the scheduler attempts to keep processes on the same CPU as long as practical for performance reasons. Therefore, forcing a specific CPU affinity is useful only in certain applications. The CPU affinity is represented as a bitmask, with the lowest order bit corresponding to the first logical CPU and the highest order bit corresponding to the last logical CPU. Not all CPUs may exist on a given system but a mask may specify more CPUs than are present. A retrieved mask will reflect only the bits that corre- spond to CPUs physically on the system. If an invalid mask is given (i.e., one that corresponds to no valid CPUs on the current system) an error is returned. The masks are typically given in hexadecimal. For example, 0x00000001 is processor #0 0x00000003 is processors #0 and #1 0xFFFFFFFF is all processors (#0 through #31) When taskset returns, it is guaranteed that the given program has been scheduled to a legal CPU. OPTIONS -c, --cpu-list specifiy a numerical list of processors instead of a bitmask. The list may contain multiple items, separated by comma, and ranges. For example, 0,5,7,9-11. --------------------------------------------------------------- Hardware setting --------------------------------------------------------------- Memory system is in "Non Mirror Mode". PRIMEQUEST 580 memory system supports DSSA (Dual Sync System Architecture ) and works in one of following two modes. (1) Extented Mirror Mode Address buses and Data buses are duplicated. And most of internal action of chipset is also duplicated. In this mode, system memory throughput becomes half but higher reliability is expected by the memory system duplication. (2) Non Mirror Mode Address buses and data buses are not duplicated. And the internal action of chipset is not duplicated. In this mode, full memory bandwidth is available, but the system duplication for higher reliability does not work. Please see the detail of DSSA in the attached file. "FUJITSU-PRIMEQUEST-20051109_2.pdf". --------------------------------------------------------------- Other Notes --------------------------------------------------------------- +FDO PASS1= -prof-gen PASS2= -prof-use Using feedback-directed optimization, a profile is gen- erated on the first pass of compilation and used on the second pass. --------------------------------------------------------------- Portability flags for SPEC CPU2000 --------------------------------------------------------------- -Dalloca=_alloca Replace occurrences of alloca() with _alloca. -DSPEC_CPU2000_LP64 Compile using LP64 programming model. -DLINUX_i386 Linux Intel system, use "long long" as 64bit variable. -DHAS_ERRLIST Prog env provides specification for "sys_errlist[]". -DSPEC_CPU2000_NEED_BOOL Use SPEC provided definition of the boolean type. -DSPEC_CPU2000_LINUX_IA64 Compile for an IA64 system running Linux. -DPSEC_CPU2000_GLIBC22 Compatibility with 2.2 & later versi- ons of glibc -DSYS_IS_USG Specifies that the operating system is USG compliant. -DSYS_HAS_TIME_PROTO Do not explicitly declare time(). -DSYS_HAS_SIGNAL_PROTO Do not explicitly #include -DSYS_HAS_IOCTL_PROTO Do not explicitly declare ioctl(). -DSYS_HAS_CALLOC_PROTO Do not explicitly declare calloc(). -include unistd.h include for the definition of 'HZ' -FI Fixed-format F90 source code.