Intel(R) Fortran & C++ Compiler 7.0 for Linux --------------------------------------------- Intel(R) Fortran & C++ compiler options. Used for SGI Altix 3000 submissions. Performance -O2 Enable optimizations (DEFAULT) -O1 Optimize for maximum speed, but disable some optimizations which increase code size for a small speed benefit -O3 Enable -O2 plus more aggressive optimiza­ tions that may not improve performance for all programs -O0 Disable optimizations -O Same as -O2 -Ob Control inline expansion: n=0 -- Disables inlining n=1 -- Inline functions declared with __inline, and perform C++ inlining n=2 -- Inline any function, at the com piler's discretion (same as -ip) -falias Assume aliasing in program (DEFAULT) -fno-alias Assume no aliasing in program -ffnalias Assume aliasing within functions (DEFAULT) -fno-fnalias Assume no aliasing within functions, but assume aliasing across calls -mp Maintain floating point precision (disables some optimizations) -mp1 Improve floating-point precision (speed impact is less than -mp) -tpp1 Target optimization to the Itanium processor. -tpp2 Target optimization to the Itanium 2 processor. -mcpu= Optimize for a specific cpu itanium -- Optimize for Itanium(R) processor itanium2 -- Optimize for Itanium(R) 2 processor Advanced Performance Enable and specify the scope of Interprocedural (IP) Optimizations: -ip Enable single-file IP optimizations (within files) -ipo Enable multi-file IP optimizations (between files) -ipo_c Generate a multi-file object file (ipo_out.o) -ipo_S Generate a multi-file assembly file (ipo_out.s) Modify the behavior of IP: -ip_no_inlining Disable IP inlining (requires -ip or -ipo) -ipo_obj Force generation of real object files (requires -ipo) Other Advanced Performance Options: -nolib_inline Disable inline expansion of intrinsic functions -pad Enable(DEFAULT) changing variable and array memory layout -nopad Disable changing variable and array memory layout -unroll0 Disable loop unrolling -safe_cray_ptr Cray pointers do not alias with other variables -prof_dir Specify directory for profiling output files (*.dyn and *.dpi) -prof_file Specify file name for profiling summary file -prof_gen Instrument program for profiling -prof_use Enable use of profiling information during optimization -fnsplit[-] Enable/disable function splitting (enabled with -prof_use) -qp, -p Compile and link for function profiling with UNIX prof tool -opt_report Generate an optimization report to stderr -opt_report_file Specify the filename for the generated report -opt_report_level[level] Specify the level of report verbosity (min|med|max) -opt_report_phase Specify the phase that reports are generated against -opt_report_routine Reports on routines containing the given name -opt_report_help Display the optimization phases available for reporting -openmp Enable the compiler to generate multi- threaded code based on the OpenMP* directives -openmp_profile Link with instrumented OpenMP runtime library to generate OpenMP profiling infor mation for use with the OpenMP component of the VTune(TM) Performance Analyzer -openmp_stubs Enables the user to compile OpenMP programs in sequential mode. The openmp directives are ignored and a stub OpenMP library is linked (sequential) -openmp_report{0|1|2} Control the OpenMP parallelizer diagnostic level -parallel Enable the auto-parallelizer to generate multi-threaded code for loops that can be safely executed in parallel -par_report{0|1|2|3} Control the auto-parallelizer diagnostic level -par_threshold[n] Set threshold for the auto-parallelization of loops where n is an integer from 0 to 100 -ansi_alias[-] Enable(DEFAULT)[disable] stating ANSI com pliance of the compiled program and that optimizations can be based on the ANSI rules (implies -Qrestrict) -ivdep_parallel Make ivdep directives mean no loop carried dependencies -ftz Flush denormal results to zero -IPF_fma[-] Enable[disable] the combining of floating point multiplies and add/subtract opera tions -IPF_fltacc[-] Enable[disable] optimizations that affect floating point accuracy -IPF_flt_eval_method0 Floating point operands evaluated to the precision indicated by program -IPF_fp_speculation Enable floation point speculations with the following conditions: fast - speculate floating point operations safe - speculate only when safe strict - same as off off - disables speculation of floating- point operations Output, Debug -c Compile to object (.o) only, do not link -S Compile to assembly (.s) only, do not link (*I) -use_asm Produce objects through assembler -fcode-asm Produce assembly file with optional code annotations -fsource-asm Produce assembly file with optional code annotations -f[no]verbose-asm Produce assembly file with compiler com ments (DEFAULT) -list Print source listing on sdtout -list -show Include print source listing on stdout with INCLUDE files expanded -o Name output file -g Produce symbolic debug information in object file -inline_debug_info Preserve the source position of inlined code instead of assigning the call-site source position to inlined code Fortran Preprocessor -D[=] Define macro -E Preprocess to stdout -EP Preprocess to stdout omitting #line direc tives -P, -F Preprocess to file -fpp[n] Run Fortran preprocessor on source files prior to compilation n=0 disable CVF and # directives, equiva lent to no fpp n=1 enable CVF conditional compilation and # directives (DEFAULT) n=2 enable only # directives n=3 enable only CVF conditional compilation directives -cpp[n] Same as -fpp[n] -I Add directory to include file search path -U Remove predefined macro -X Remove standard directories from include file search path C Preprocessor -A[(val)] Create an assertion 'name' having value 'val' -A- Remove all predefined macros -C Don't strip comments -D[=] Define macro -E Preprocess to stdout -EP Preprocess to stdout omitting #line direc tives -P, -F Preprocess to file -I Add directory to include file search path -idirafter Add directory (dir) to the second include file search path (after -I) -U Remove predefined macro -X Remove standard directories from include file search path -H Print "include" file order and continue compilation. -M Generate makefile dependency information -MD Preprocess and compile. Generate output file (.d extension) containing dependency information. -MF Generate makefile dependency information in . Must specify -M or -MM. -MG Similar to -M, but treats missing header files as generated files. -MM Similar to -M, but does not include system header files. -MMD Similar to -MD, but does not include system header files. -MX Generate dependency file (.o.dep extension) containing information used for the Intel wb tool. -dM Output macro definitions in effect after preprocessing (use with -E). Component Control -Qoption,, Pass options to tool specified by -Qlocation,, Set as the location of tool specified by -Qinstall Set as root of compiler installation Language -i2 Set default KIND of integer variables is 2 -i4 Set default KIND of integer variables is 4 -i8 Set default KIND of integer variables is 8 -r8 Set default size of REAL to 8 bytes -r16 Set default size of REAL to 16 bytes -autodouble Same as -r8 -doubletemps All intermediate results of floating-points values are at least double precision. -DD Compile debug statements (indicated by D in column 1) -DX Compile statements that have X in column 1 -DY Compile statements that have Y in column 1 -FR Specifies source files are in free format -FI Specifies source files are in fixed format -72 Specify 72 column lines for fixed form sources -80 Specify 80 column lines for fixed form sources -132 Specify 132 column lines for fixed form sources -extend_source Same as -132 -pad_source Make compiler acknowledge blanks at the end of a line -dps Enable DEC* PARAMETER statement recognition (DEFAULT) -nodps Disable DEC* PARAMETER statement recogni tion -1, -onetrip Execute any DO loop at least once -auto Make all local variables AUTOMATIC -auto_scalar Make scalar local variables AUTOMATIC (DEFAULT) -save Save all variables (static allocation); opposite of -auto -u, -implicitnone Set IMPLICIT NONE by default -common_args Assume "by reference" subprogram arguments may alias one another -vms Enable VMS and DEC statement extensions -zero Implicitly initialize all data to zero -Qdyncom"blk1,blk2,..." Make given common blocks dynamically-allo cated -Qloccom"blk1,blk2,..." Make given common blocks locally-allocated -nbs Treat backslash as a normal character, not an escape character -nus Do not append an underscore to external subroutine names -nus[,] Do not append an underscore to subroutine names listed in -lowercase Change routine names to all lowercase (DEFAULT) -uppercase Change routine names to all uppercase -[no]align Analyze and reorder memory layout for vari ables and arrays -Zp[n] Specify alignment constraint for structures (n=1,2,4,8,16) -y, -syntax Perform syntax check only -[no]restrict Enable [disable] the 'restrict' keyword for disambiguating pointers -Xa Select extended ANSI C dialect -Xc, ansi Select strict ANSI conformance dialect -c99[-] Enable(DEFAULT) [disable] C99 support for C programs -std=c99 Enable c99 support for C programs -Kc++ Compile all source or unrecognized file types as C++ source files -fno-rtti Disable RTTI support -Zp[n] Specify alignment constraint for structures (n=1,2,4,8,16) -syntax Perform syntax check only -fshort-enums Allocate as many bytes as needed for enu merated types -fsyntax-only Same as -syntax -funsigned-char Change default char type to unsigned -funsigned-bitfields Change default bitfield type to unsigned Compiler Diagnostics -cerrs[-] Enable[disable](DEFAULT) terse format for diagnostic messages -cm Suppress all comment messages -q Suppress printing errors to stderr -w Disable all warnings -w Control diagnostics: n=0 -- Display errors (same as -w) n=1 -- Display warnings and errors (DEFAULT) n=2 -- Display remarks, warnings, and errors -wn Print a maximum of n errors -wd[,,...] Disable diagnostics L1 through LN -we[,,...] Change severity of diagnostics L1 through LN to error -ww[,,...] Change severity of diagnostics L1 through LN to warning -wr[,,...] Change severity of diagnostics L1 through LN to remark -Wall Enable all warnings -Werror Force warnings to be reported as errors -Wn Disable warnings (n=0) or show warnings (n=1, DEFAULT) -WB Issue a warning instead of an error for out-of-bounds array references -w90, -w95 Suppress messages about use of non-standard Fortran -e90, -e95 Issue errors for non-standard Fortran Miscellaneous -help Prints list of compiler options -V Display compiler version information -dryrun Show driver tool commands but do not exe cute tools -x All source files found subsequent to -x will be recognized as one of the following types: c -- C source file c++ -- C++ source file c-header -- C header file cpp-output -- C pre-processed file assembler -- Assembly file assembler-with-cpp -- Assembly file that needs to be preprocessed none -- Disable recognition and revert to file extension -v Show driver tool commands and execute tools -Tf Compile file as Fortran source -nobss_init Disable placement of zero-initialized vari ables in BSS (use DATA) -Kpic, -KPIC Generate position independent code -fpic, -fPIC Generate position independent code -Knopic, -KNOPIC Do not generate position independent code -fr32 Disable use of high floating point regis ters -size_lp64 Assume 64-bit size for long and pointer types Linking/Linker -L Instruct linker to search for libraries -i_dynamic Link Intel provided libraries dynamically -dynamic-linker Selects a dynamic linker (filename) other than the default -mrelax Pass -relax to the linker -mnorelax Do not pass -relax to the linker -no_cpprt Do not link in C++ runtime libraries -nodefaultlibs Do not use standard libraries when linking -nostartfiles Do not use standard startup files when linking -nostdlib Do not use standard libraries and startup files when linking -static Prevents linking with shared libraries -shared Produce a shared object -u Pretend the is undefined -Xlinker Pass directly to the linker for pro cessing -Wl,[,,...] Pass options o1, o2, etc. to the linker for processing -C90 Link with alternate I/O library for mixed output with C -posixlib Link with POSIX library -Vaxlib Link with portability library Copyright Information Copyright (C) 1985-2002, Intel Corporation. All rights reserved. * Other brands and names are the property of their respective owners. dplace - a tool for controlling placement of processes onto cpus -c Cpu_number(s). Specified as a list of cpu ranges: Example: "-c1", "-c2-4", "-c1,4-8,3". Cpu numbers are NOT physical cpu numbers. They are logical cpu number that are relative to the cpus that are in the set of allowed cpus as specified by the current cpumemset or "runon" command. Cpu numbers start at 0. If this option is not specified, all cpus of the current cpumemset are available. MPI env variables definitions: ------------------------------ MPI_COMM_SIZE - determines the size of the group associated with a communicator. MPI_DSM_CPULIST - allows you to manually select processors to use for MPI application. MPI_DSM_MUSTRUN - ensures that each MPI process will get a physical CPU and memory on the node to which it was assigned.