------------------------------------------------------ DELL SPEC CPU2000 FLAG DESCRIPTIONS - INTEL C++ AND FORTRAN COMPILERS 5.0.1 - dell.cpu2000.ic5.0.1.itanium.26jun2001.cfg ------------------------------------------------------ ------------------------------------------------------ INTEL C++ COMPILER 5.0.1 FLAG DESCRIPTIONS ------------------------------------------------------ -GR[-] Enables [disables (DEFAULT)] C++ Runtime Type Information (RTTI). -GX[-] Enables [disables (DEFAULT)] C++ exception handling. -O{1|2|3} 1: optimize for speed, but disable some optimizations that increase code size for a small speed benefit. Includes inline expansion for intrinsic functions, global optimizations, string pooling optimizations. 2: optimizes for speed (DEFAULT). The -O2 option includes O1 optimizations and in addition enables inlining of intrinsics and more speed optimizations. 3: builds on -01 and -02 optimizations by enabling high-level optimization. This level does not guarantee higher performance unless loop and memory access transformation take place. In conjunction with -QaxK/-QxK and QaxW/QxW, this switch causes the compiler to perform more aggressive data dependency analysis than for -O2. This may result in longer compilation times. -Qip Enable single-file IP optimizations (within files, same as -Ob2). -Qipo Enable multi-file IP optimizations (between files). - inline function expansion - interprocedural constant propogation - dead code elimination - propagation of function characteristics - passing arguments in registers - loop-invariant code motion -Qprof_gen Instrument program for profiling for the first phase of two-phase profile guided optimization. -Qprof_use Instructs the compiler to produce a profile-optimized executable and merges available dynamic information (.dyn) files into a pgopti.dpi file. If you perform multiple executions of the instrumented program, -Qprof_use merges the dynamic information files again and overwrites the previous pgopti.dpi file. Without any other options, the current directory is searched for .dyn files. ------------------------------------------------------ INTEL FORTRAN COMPILER 5.0.1 FLAG DESCRIPTIONS ------------------------------------------------------ /O{1|2|3} 1: optimize for speed, but disable some optimizations that increase code size for a small speed benefit. Includes inline expansion for intrinsic functions, global optimizations, string pooling optimizations. 2: optimizes for speed (DEFAULT). The -O2 option includes O1 optimizations and in addition enables inlining of intrinsics and more speed optimizations. 3: builds on -01 and -02 optimizations by enabling high-level optimization. This level does not guarantee higher performance unless loop and memory access transformation take place. In conjunction with -QaxK/-QxK and QaxW/QxW, this switch causes the compiler to perform more aggressive data dependency analysis than for -O2. This may result in longer compilation times. /Qftz Enable flush-to-zero mode, where gradual underflows are flushed to zero. /Qip Enable single-file IP optimizations (within files, same as /Ob2). /Qipo Enable multi-file IP optimizations (between files). - inline function expansion - interprocedural constant propogation - dead code elimination - propagation of function characteristics - passing arguments in registers - loop-invariant code motion /Qprof_gen Instrument program for profiling for the first phase of two-phase profile guided otimization. /Qprof_use Instructs the compiler to produce a profile-optimized executable and merges available dynamic information (.dyn) files into a pgopti.dpi file. If you perform multiple executions of the instrumented program, -Qprof_use merges the dynamic information files again and overwrites the previous pgopti.dpi file. Without any other options, the current directory is searched for .dyn files. ------------------------------------------------------ MISCELLANEOUS ------------------------------------------------------ The starting tokens "/" and "-" are both equivalent for flags passed to the compiler. For example, -QxK and /QxK are identical switches. +FDO PASS1= /Qprof_gen PASS2= /Qprof_use Using feedback-directed optimization, a profile is generated on the first pass of compilation and used on the second pass. ------------------------------------------------------ PORTABILITY OPTIONS FOR CPU2000 ------------------------------------------------------ 175.vpr: -------- -DSPEC_CPU2000_P64: Necessary to enable the P64 porting changes 176.gcc: -------- -Dalloca=_alloca : Use the built-in optimized alloca /Fn : 176.gcc uses alloca and this options tells the linker to pre-allocate n bytes of stack. The default amount of stack allocated is not enough and 176.gcc crashes with a run-time error 178.galgel: ----------- -FI : Fixed-format F90 source code. 181.mcf: -------- -DSPEC_CPU2000_P64: Necessary to enable the P64 porting changes 186.crafty: ----------- -DNT_i386 : Specifies that it is a Windows NT Intel processor-based system which makes the compiler use "_int64" as the 64-bit variable that 186.crafty needs. 252.eon: -------- -DSPEC_CPU2000_P64: Necessary to enable the P64 porting changes 253.perlbmk: ------------ -DSPEC_CPU2000_NTOS: This enables the code changes for porting to Windows get included -DPERLDLL : On Windows, we need a perl.exe instead of a perl.exe and perl.dll. This pre-define ensures that the changes necessary to get a single, UNIX-style executible without getting the indirect calls that can cause a 10% performance degradation. This allows the Windows-based executible to be as close as possible to the Unix-based one. -DSPEC_CPU2000_P64: Necessary to enable the P64 porting changes 254.gap: -------- -DSPEC_CPU2000 : -DSPEC_CPU2000_P64: Necessary to enable the P64 porting changes 255.vortex: ----------- -DSPEC_CPU2000_P64: Necessary to enable the P64 porting changes