Intel® Compilers help make your software run at top speeds on all Intel® 32-bit processors and 64-bit Itanium® processors. Optimizations include support for Streaming SIMD Extensions 2 (SSE2) in the Intel® Pentium® 4 and Pentium-M processors and software pipelining in the Intel® Itanium® 2 processor. Inter-procedural optimization (IPO) and profile-guided optimization (PGO) can provide greater application performance. Intel Compilers support multi-threaded code development through auto-parallelism and OpenMP* support.
The following executables are included in the installation package:
icc
for IA-32 applications and ecc
for Itanium-based applications, determine the language, C or C++, to be used, based
on the filename extension. When compiling preprocessed files (*.i
),
the ecc
and icc
drivers assume the C language, whereas the
C++ drivers, ecpc and icpc,
assume the C++ language, although these
defaults can be overridden by compiler options. Please consider using the C++
compiler driver for C++ applications.
Information on Intel software development products is available at http://www.intel.com/software/products/ .
The Intel® Software College Provides a one-stop shop at Intel for training developers on leading edge software development technologies. Training consists of online and classroom courses covering all Intel architectures, platforms and technologies. For details refer to http://www.intel.com/software/college/ .
The VTune(TM) Performance Analyzer allows you to evaluate how your application is utilizing the CPU and helps you determine if there are modifications you can make to improve your application's performance. It is also not part of this product, but is available at http://www.intel.com/software/products/vtune/ .
The Intel® Performance Library Suite provides a set of routines optimized for various Intel processors. It is also not part of this product, but is available at http://www.intel.com/software/products/perflib/ .
-[a]xW
option used
for the Pentium 4 processor will now also generate code targetted to
the Pentium M processor.
-ax{i|M|K|W}
switch-ax
option. For example,
if you specify -axMK
, the compiler may generate up to 3 versions of the code.
One version would be for the Pentium® with MMXTM technology processor (M),
another version for the Pentium® III processor (K), and one generic version
that would work properly on processors without these extensions. At runtime,
one of the versions is chosen to execute depending on the processor the
program is currently running on. In this way, the program can get large
performance gains on more advanced Intel processors, while still working
properly on other processors.
-D_IOSTREAM_OP_LOCKS=0
, our
locking will be disabled and performance will improve.
Specifying -D_IOSTREAM_OP_LOCKS=1
(the default) will enable this
locking. If you choose to disable this locking, please make sure
you implement an I/O locking scheme appropriate for your
application if you are using multiple threads. push_back
and pop_back
STL member functions have been updated for
improved performance.
WORKSHARE
directive is not currently
supported, and support for array reductions is incomplete. See below under
Known Limitations for additional OpenMP
limitations. See the 'What's New in This Release' section of the User's Guide
for details on the new features.
-tpp2
compiler option. Refer to the "New Compiler Options"
section of the User's Manual for additional information.
/opt/intel/compiler70/training/optimize/index.htm
.
idb
after setting
up the compiler configuration script (see section
Compiler Environment and configuration scripts ) and enter help
.
PATH
and LD_LIBRARY_PATH
, which may be updated by the .login file. Refer to section:
"Compiler Environment and configuration scripts" for details.
icc
and icpc
for C and C++ source files, respectively.
iccfilt
.
idb
.
ecc
and ecpc
for C and C++ source files, respectively.
eccfilt
.
idb
.
ias
.
The documentation is installed in the
<install-dir>/compiler70/docs
directory. Also, an HTML index
document can be found at <install-dir>/compiler70/docs/ccompindex.htm
.
For information on the GNU glibc C language library, documentation can be obtained
from the Linux OS vendor or from the GNU web site,
www.gnu.org.
Additional documentation, including getting started guides, optimization and compatibility, is available on the product web site at http://www.intel.com/software/products/compilers/clin/ .
xpdf
utility or install
Adobe Acrobat Reader.
It is recommended to view the PDF documentation with Acrobat running within
Netscape as this provides additional navigation features. To enable Netscape
to start Acrobat Reader, it needs to be installed in a directory searched by
your PATH environment variable and you need to edit the browser's preferences. Edit --> Preferences --> Navigator --> Applications -->
new
Description: Portable Document Format
MIMEType: application/pdf
Suffixes: pdf
Application: acroread %s
Another method to configure Acrobat Reader is to add the following entry in the
file .mailcap
in your home directory:
application/pdf; acroread %sDepending on your version of the Netscape browser, you might need to disable (turn OFF) the "Automatically load images" option or the browser will freeze when you open the HTML documentation files, this means that you will then need to click on the images in the documentation if you want to see them while paging through the documentation with the browser. Turn OFF this option by clicking on:
Edit-->Preferences-->
Advanced-->Automatically load images and other data types
.
-O3, -ipo and -openmp
, may require substantially
larger amounts of RAM. Note: If you are using some other versions of the Intel C++ Compiler 7.1 or 7.0, we recommend you uninstall them prior to installing this version of Intel C++ Compiler.
The Intel compilers use the Macrovision Corporation* FLEXlm* electronic licensing technology. A valid license is needed to install the compilers. Following are the steps to install the compiler:
install
".
Please note that you may not be able to run the ‘rpm
’ command successfully if
you are not logged in as a root user. It is possible to install the
compilers without root access by unpacking the RPM files with rpm2cpio and
editing the compiler environment and configuration files, described below, but
this installation method is not supported.
-U --replacefiles
" are recommended to update existing files. The
recommended installation directory is /opt/intel
.
x
" to exit.
The compilers use environment variables that can be easily set by the
following scripts.
<install-dir>/compiler70/ia32/bin/iccvars.sh(.csh)
for IA-32 applications, and
<install-dir>/compiler70/ia64/bin/eccvars.sh(.csh)
for Itanium processor-based applications.
Default compiler options are stored in the following configuration files.
<install-dir>/compiler70/ia32/bin/icc.cfg
for IA-32 applications and
<install-dir>/compiler70/ia64/bin/ecc.cfg
for Itanium processor-based applications.
They contain common settings that can be used to add additional system-wide default compilation options. Please note that you will need to save and restore any custom options in the configuration files, when you install a new version of the Intel compiler.
The default cfg files that are provided at install time contain the
following statement: "-Xlinker -rpath <PATH libraries installed in>
".
This option embeds the path of the shared libraries into the executable.
This eliminates the need for setting the variable LD_LIBRARY_PATH
. However, if
the application is moved to a system without the same installation
configuration, the application will not work. For this purpose, the user can
remove this option from the config files and use the environment variable
LD_LIBRARY_PATH
to specify the location of the shared
libraries.
Installation Warning for RPM 4.0.2
RPM 4.0.2 cannot install to a non-default directory. This
has been resolved in RPM 4.0.3. RPM 4.1 cannot install to a non-default
directory. This has been resolved in RPM 4.11 to 4.2.
Installation Warning for Intel C++ and Fortran
compilers in Different Directories
The Intel C++ compiler for Linux and the Intel Fortran compiler for Linux share
common files.The default RPM options in the install script prevent the
compilers from working correctly when installed in different directories.
For this reason, it is recommended that the compilers are installed in the
same directory. However, the compiler installation packages should
still be untar-ed into separate directories.
All distributions of the Linux compilers include a copy of the software
"Intel(R) License Manager for FLEXlm*" to help you in configuring the
license server. This software is automatically installed during the
compiler installation if a counted license is detected. The license
manager's installer displays its End User License Agreement (EULA) via
a "pager
" program such as "more
" or
"less
". The default pager is "less
",
which requires that the "q
" key be pressed after viewing the EULA.
If this default behavior is not desired, simply set the PAGER
environment variable to some other value (e.g.,
"export PAGER=more
" in sh/ksh/bash,
or "setenv PAGER more
" in csh/tcsh) before installing the software.
-openmp
) and automatically
generated parallel programs (-parallel
) with the Intel compilers, because
the Intel compilers use the POSIX threads library to implement OpenMP
based and automatically generated parallelism. Threaded programs that exceed the
stack space limit usually experience segmentation violations or addressing
errors.
To avoid these limitations, please use a version of
glibc built with the FLOATING_STACKS
parameter
defined, typically version 2.2.4 or later for both IA-32 and Itanium Processor
Family. Then use the ulimit -s ....
command to
set the maximum shell stack size to an explicit large value (units of KBytes)
and also set the KMP_STACKSIZE
environment
variable to the needed thread stacksize in bytes. A shell stacksize limit of
unlimited does not work - it causes a fixed hard limit to be imposed. Note, in
the bash shell, ulimit -s
can be used to set a
large maximum stack size only once. In the C shell (csh),
ulimit -stacksize
can be used to reset the maximum
stacksize repeatedly. The default values for KMP_STACKSIZE
have been increased to 2 MB for IA-32 and 4 MB for Itanium-based systems.
This solution has been tested on glibc version 2.2.4-13 for IA-32 and glibc 2.2.4-19 for Itanium Processor Family as found in the RedHat 7.2 Linux distribution. For glibc 2.2.4-13 on IA-32, the shared version of the POSIX threads library must be used, (there should not be a -static flag in the compiler .cfg file or on the command line).
In addition, if a common block is declared as
"THREADPRIVATE
" with an OpenMP directive, the common block must have the same
length in all the source files in which it is declared.
Use of Profile Guided Optimization along with OpenMP may substantially
increase the execution time for the generation of the profile (.dyn
file). This is a known issue which is being addressed. The use of
profile guided optimization in conjunction with OpenMP is not recommended
for this version of the Intel C++ compiler.
Please click on the appropriate link below to see additional notes and known limitations in the latest version of the compiler.
Registration Center
".
Note: If you are having trouble registering or unable to access your Premier Support account, contact developer.support@intel.com. Please do not email your technical issue to developer.support@intel.com as it is not a secure medium.
Be sure to also check out our Users Forums at http://www.intel.com/ids/community/, FAQ's, tips and tricks, and other support information available from our web-site at: http://support.intel.com/support/performancetools/c/linux/. For general support information please visit http://www.intel.com/software/products/support/ .
For more information about using the Intel C++ Compiler 7.1 for Linux, please visit http://www.intel.com/software/products/compilers/clin/. The following are some examples of the technical papers:
"Submit"
button.
"I Accept"
button.
"Go"
button next to the "Product"
drop-down list.
"Submit Issue"
link in the left navigation bar.
"Development Environment (tools,SDV,EAP)"
from the
"Product Type"
drop-down list.
"Intel® C++ Compiler, Linux*"
from the "Product Name"
drop-down list.
"Development Environment (tools, SDV, EAP)"
from
the "Product Type"
drop-down list.
"Intel® C++ Compiler for Linux*"
from the "Product Name"
drop-down list. Please follow these guidelines when forming your problem report or product suggestion:
icid
. When icid
is executed, the package ID is written to standard output. See the
Installation section for details on
setting up the compiler environment.
install error
for the issue type. See
Technical Support and Feedback for
instructions on how to register for support. If you were not able to install
the compiler or cannot run icid
to determine
the package ID, enter the filename you downloaded as the package ID if you
downloaded the compiler and explain in the issue that you were not able to run
icid. A technical support engineer will respond within one (1) Intel business day.
Copyright (C) 2001 - 2003 Intel Corporation. All Rights Reserved.