<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated on Tue, 24 Nov 2009 20:14:49 -0800 -->
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <atom:link href="http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-kb/type/compatibility/feed/" rel="self" type="application/rss+xml" />
    <title>Intel Software Network articles feed</title>
    <link>http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-kb/compatibility/</link>
    <description></description>
    <language>en-us</language>
    <item>
      <title>Intel® Fortran Compiler for Linux* - Supported operating systems</title>
      <description><![CDATA[ <p><a href="#110">Version 11.0</a> <a href="#101">Version 10.1</a></p>
<h2><a id="110" name="110"></a>Version 11.0</h2>
<h3>Requirements to develop IA-32 architecture applications</h3>
<ul>
<li>A system based on an IA-32 architecture processor supporting the Intel® Streaming SIMD 2 Extensions (Intel® SSE2) instructions (e.g. Intel Pentium® 4 processor), or an Intel® 64 architecture processor</li>
<li>512 MB of RAM (1GB recommended)</li>
<li>1.5GB free disk space for all features</li>
<li>One of the following Linux distributions (this is the list of distributions tested by Intel; other distributions may or may not work and are not recommended - please refer to Technical Support if you have questions):        
<ul>
<li>Asianux* 3.0</li>
<li>Debian* 4.0</li>
<li>Fedora* 9</li>
<li>Red Hat Enterprise Linux* 3, 4, 5</li>
<li>SUSE LINUX Enterprise Server* 9, 10</li>
<li>TurboLinux* 11</li>
<li>Ubuntu* 8.04</li>
</ul>
</li>
<li>Linux Developer tools component installed, including gcc, g++ and related tools</li>
<li>binutils 2.17.50 or later</li>
<li>Linux component compat-libstdc++ providing libstdc++.so.5</li>
<li>If developing on an Intel® 64 architecture system, Linux component glibc-devel.i386 providing crt1.o</li>
</ul>
<h3>Requirements to Develop Intel® 64 Architecture Applications</h3>
<ul>
<li>A system based on an Intel® 64 architecture processor, or based on an AMD 64-bit processor</li>
<li>512 MB of RAM (1GB recommended)</li>
<li>1.5GB free disk space for all features</li>
<li>100 MB of hard disk space for the virtual memory paging file. Be sure to use at least the minimum amount of virtual memory recommended for the installed distribution of Linux</li>
<li>One of the following Linux distributions (this is the list of distributions tested by Intel; other distributions may or may not work and are not recommended - please refer to Technical Support if you have questions):        
<ul>
<li>Asianux* 3.0</li>
<li>Debian* 4.0</li>
<li>Fedora* 9</li>
<li>Red Hat Enterprise Linux* 3, 4, 5</li>
<li>SGI ProPack* 5</li>
<li>SUSE LINUX Enterprise Server* 9, 10</li>
<li>TurboLinux* 11</li>
<li>Ubuntu* 8.04</li>
</ul>
</li>
<li>Linux Developer tools component installed, including gcc, g++ and related tools</li>
<li>binutils 2.17.50 or later</li>
<li>Linux component compat-libstdc++ providing libstdc++.so.5</li>
<li>Linux component containing 32-bit libraries (may be called ia32-libs)</li>
</ul>
<h3>Requirements to Develop IA-64 Architecture Applications</h3>
<ul>
<li>A system based on an Intel® Itanium® processor.</li>
<li>512 MB of RAM (1 GB recommended).</li>
<li>1.5GB free disk space for all features</li>
<li>One of the following Linux distributions (this is the list of distributions tested by Intel; other distributions may or may not work and are not recommended - please refer to Technical Support if you have questions):</li>
<li>Asianux* 3.0</li>
<li>Debian* 4.0</li>
<li>Red Hat Enterprise Linux* 3, 4, 5</li>
<li>SUSE LINUX Enterprise Server* 9, 10</li>
<li>TurboLinux* 11</li>
<li>Ubuntu* 8.04</li>
<li>Linux Developer tools component installed, including gcc, g++ and related tools</li>
<li>binutils 2.17.50 or later</li>
<li>Linux component compat-libstdc++ providing libstdc++.so.5</li>
</ul>
<h3>Additional Requirements to use the Graphical User Interface of the Intel® Debugger</h3>
<ul>
<li>IA-32 Architecture system or Intel® 64 Architecture system</li>
<li>Java* Runtime Environment 5.0 (also called 1.5)</li>
</ul>
<h2><a id="101" name="101"></a>Version 10.1</h2>
<h3>Requirements to develop IA-32 architecture applications</h3>
<ul>
<li>A system based on an IA-32 architecture processor (minimum 450       MHz Intel Pentium®            II       processor or greater - Intel® Core™2 processor family recommended),       Intel® 64       architecture processor, or a system based on a compatible AMD*  processor </li>
<li>512 MB of RAM (1GB recommended). </li>
<li>100 MB of disk space, plus an additional 200 MB during installation       for the download and temporary files. </li>
<li>One of the following Linux distributions (this is the list of distributions       tested by Intel; other distributions may or may not work and are       not recommended - please contact Intel® Premier Support if you have       questions):          
<ul>
<li>Asianux* 3.0 </li>
<li>Debian* 4.0 </li>
<li>Fedora*  7, 8 </li>
<li>Red Hat Enterprise Linux* 3, 4, 5 </li>
<li>SUSE LINUX Enterprise Server*  9, 10 </li>
<li>TurboLinux* 11</li>
<li>Ubuntu* 7.04, 7.10 </li>
</ul>
</li>
<li>Linux Developer tools component installed, including gcc, g++       and related tools</li>
<li>Linux component <code>compat-libstdc++</code> providing <code>libstdc++.so.5 </code> </li>
</ul>
<h3>Requirements to Develop Applications for Intel® 64 Architecture Systems     or for AMD* 64-bit Processors</h3>
<ul>
<li> A system based on an IA-32 or Intel® 64 architecture processor       (Intel® Core™2 processor family or Intel® Xeon® processor       recommended), or based on an AMD 64-bit processor </li>
<li> 512 MB of RAM (1GB recommended) </li>
<li> 300 MB free hard disk space, plus an additional 300 MB during       installation for download and temporary files. </li>
<li> 100 MB of hard disk space for the virtual memory paging file.       Be sure to use at least the minimum amount of virtual memory recommended       for the installed distribution of Linux</li>
<li>One of the following Linux distributions (this is the list of distributions       tested by Intel; other distributions may or may not work and are       not recommended - please contact Intel® Premier Support if you       have questions):          
<ul>
<li>Asianux* 3.0 </li>
<li>Debian* 4.0 </li>
<li>Fedora*  7, 8 </li>
<li>Red Hat Enterprise Linux* 3, 4, 5</li>
<li>SGI ProPack* 5 </li>
<li>SUSE LINUX Enterprise Server* 9, 10 </li>
<li>TurboLinux* 11</li>
<li>Ubuntu* 7.04, 7.10 </li>
</ul>
</li>
<li>Linux Developer tools component installed, including gcc, g++       and related tools</li>
<li>Linux component <code>compat-libstdc++</code> providing <code>libstdc++.so.5</code></li>
<li>Linux component containing 32-bit libraries (may be called <code>ia32-libs</code>) </li>
</ul>
<h3>Requirements to Develop IA-64 Architecture Applications</h3>
<ul>
<li>A system based on an Intel® Itanium®  processor. </li>
<li>512 MB of RAM (1 GB recommended). </li>
<li>150 MB of disk space, plus an additional 200 MB during installation       for the download and temporary files. </li>
<li>One of the following Linux distributions (this is the list of distributions       tested by Intel; other distributions may or may not work and are       not recommended - please contact Intel® Premier Support if you       have questions):          
<ul>
<li>Asianux* 3.0 </li>
<li>Debian* 4.0 </li>
<li>Red Hat Enterprise Linux* 3, 4, 5 </li>
<li>SUSE LINUX Enterprise Server* 9, 10 </li>
<li>TurboLinux* 11</li>
</ul>
</li>
<li>Linux Developer tools component installed, including gcc, g++       and related tools </li>
<li>Linux component <code>compat-libstdc++</code> providing <code>libstdc++.so.5 <br /></code></li>
</ul>
<p>If you would like to comment on this article, please feel free to do so below.  If you have questions or need technical support, please visit the <a href="http://software.intel.com/en-us/forums/intel-fortran-compiler-for-linux-and-mac-os-x/">Intel Fortran Compiler for Linux User Forum</a>.</p> ]]></description>
      <link>http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-supported-operating-systems</link>
      <pubDate>Fri, 23 Oct 2009 15:16:04 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-supported-operating-systems#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-supported-operating-systems</guid>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
    </item>
    <item>
      <title>Intel Fortran Compiler 11.1 Release Notes</title>
      <description><![CDATA[ This page provides the current Installation Guide and Release Notes for the Intel® Fortran Compiler products. All files are in PDF format - <a target="_blank" href="http://www.adobe.com/go/EN_US-H-GET-READER">Adobe Reader* </a>(or compatible) required.  Japanese translations are provided at even-numbered updates.<br /><br />11.1 Update 3, October 2009<br /><br />Intel® Fortran Compiler Professional Edition for Linux*<br /> 
<ul>
<li><a href="http://software.intel.com/file/23254">English</a></li>
</ul>
Intel® Fortran Compiler Professional Edition for Mac OS X*<br /> 
<ul>
<li><a href="http://software.intel.com/file/23255">English</a></li>
</ul>
Intel® Visual Fortran Compiler Professional Edition for Windows*<br /> 
<ul>
<li><a href="http://software.intel.com/file/23257">English</a></li>
</ul>
<br />11.1 Update 2 (Revised), October 2009<br /><br />Intel® Visual Fortran Compiler Professional Edition for Windows*<br /> 
<ul>
<li><a href="http://software.intel.com/file/22885">English</a> </li>
</ul>
<br />11.1 Update 2, September 2009<br /><br />Intel® Fortran Compiler Professional Edition for Linux*<br /> 
<ul>
<li><a href="http://software.intel.com/file/22125">English</a></li>
<li><a href="http://software.intel.com/file/22126">Japanese</a></li>
</ul>
Intel® Fortran Compiler Professional Edition for Mac OS X*<br /> 
<ul>
<li><a href="http://software.intel.com/file/22128">English</a></li>
</ul>
Intel® Visual Fortran Compiler Professional Edition for Windows*<br /> 
<ul>
<li><a href="http://software.intel.com/file/22131">English</a></li>
<li><a href="http://software.intel.com/file/22132">Japanese</a></li>
</ul>
For questions or technical support, visit <a target="_blank" href="http://software.intel.com/sites/support/">Intel® Software Developer Support</a> ]]></description>
      <link>http://software.intel.com/en-us/articles/intel-fortran-compiler-111-release-notes</link>
      <pubDate>Thu, 22 Oct 2009 12:49:09 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-fortran-compiler-111-release-notes#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-fortran-compiler-111-release-notes</guid>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
      <category>Intel® Fortran Compiler for Mac OS X* Knowledge Base</category>
      <category>Intel® Visual Fortran Compiler for Windows* Knowledge Base</category>
    </item>
    <item>
      <title>Using Intel Compilers for Linux with Caos Linux</title>
      <description><![CDATA[ Using Intel(R) Compilers under Caos NSA 1.0 Linux<br /><br />These notes apply to a Caos NSA 1.0 Linux Desktop installation.  Other installation types (server, base, etc) but should be similar but may require the installation of additional packages.<br /><br />In order to use Intel(R) Compilers ( Fortran or C++ ) under Caos Linux you will need the latest 11.1 version of the Intel compiler(s). Older 10.0 and 9.1 versions of the compilers may not work properly and have not been tested.  Keep in mind that Caos NSA Linux installations are not OFFICIALLY supported by the Intel Compilers.  Please see your ReleaseNotes document with your compiler version for a list of officially supported distributions and versions.<br /><br />If you have active support for your compiler, you can download the latest Intel compiler version from<br />https://registrationcenter.intel.com<br /><br />Follow the directions below after your network connection is configured.  Also, it is recommended that you first update your system to the latest version of Caos.  Open a terminal window as the root user.  Enter the following command to update your Caos installation:<br /><br />smart update<br />smart upgrade<br /><br />BEFORE YOU INSTALL Intel(R) Fortran for Linux or Intel(R) C++ for Linux on your fresh Caos NSA Desktop installation, you will first need to install several packages to prepare the system to serve as a development platform:<br /><br />Check that gcc and g++ are installed. By default. Check this with:<br /><br />gcc --version<br />g++ --version<br /><br />By default you may not have these packages installed.<br /><br />To prepare the system for the Intel Compilers, add the gcc-c++ and glibc-devel packages.  Open a terminal window as the root user.  Use 'smart' to install the following packages:<br /><br />smart install gcc-c++<br />smart install glibc-devel<br /><br />If you are in a 32bit, also known as "CAOS NSA 1.0 for i386" system, you may proceed with the installation of the Intel compilers (see below).  'uname -m' will return "i686" for this configuration.<br /><br /><b>For x86-64 architecture</b>, you will also need another package to supply 32bit libraries needed for developing 32bit applications in addition to 64bit applications.  First, determine the version of the 64bit version of glibc-devel that is installed:<br /><br />smart query glibc-devel<br /><br />the output should show both the 64bit and 32bit packages and their version.  For example:<br /><br />glibc-devel-2.8-13.nsa1@i686<br />glibc-devel-2.8-13.nsa1$x86_64<br /><br />Note that the versions you see may not match "2.8-13".  You may have a newer or older version available.  Find the 'i686' version and use smart install to fetch and install that package:<br /><br />smart install glibc-devel-2.8-13.nsa1@i686   <br /><br />for example.  Use the correct version returned by 'smart query' above, "2.8-13" is just an example to give you the idea.<br /><br /><br />Finally, there is an optional package to consider: The 11.0 version of the Intel Compiler for Linux has a graphical <br />debugger, a new graphical interface for the IDB debugger. If you want to use this debugger, please make sure to install the Java JRE version 1.5 or greater. This can be done at anytime after the installation of the compiler. However, you will get a warning message about 'missing prerequisite' for the JRE - simply ignore that message and proceed with the installation.  OR to avoid that message and enable the graphical IDE, get the latest JRE from:<br /><br /><a href="http://java.com/en/download/manual.jsp">http://java.com/en/download/manual.jsp</a><br /><br />Once installation of prerequisites is complete, you are ready to start the Intel compiler(s) installation. During the installation, you may get a message "Detected operating system (generic) is not supported", followed by<br />----------------------------------------------------------------- ---------------<br /> Missing optional pre-requisite<br /> -- operating system type is not supported.<br /> -- system glibc or kernel version not supported or not detectable<br /> -- binutils version not supported or not detectable<br /> ----------------------------------------------------------------- ---------------<br />"Would you like to perform an unsupported install of this product [yes/no] (no)?"<br /><br />enter "<b>yes</b>"<br /><br />This will complete the installation.  Keep in mind, <b>you will get this warning from the compiler installer until such time as this particular OS and version are supported.</b> Once installed, you can read the ReadMe notes in ...installdir.../Documentation directory which has a list of the supported Linux distributions and versions. ]]></description>
      <link>http://software.intel.com/en-us/articles/using-intel-compilers-for-linux-with-caos-linux</link>
      <pubDate>Fri, 28 Aug 2009 13:49:34 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/using-intel-compilers-for-linux-with-caos-linux#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/using-intel-compilers-for-linux-with-caos-linux</guid>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
    </item>
    <item>
      <title>Installing Intel Compilers on OpenSUSE</title>
      <description><![CDATA[ <br />
<div id="art_pre_template"><b>Problem : </b>I am having trouble installing my Intel Compiler Pro v11.1 on OpenSUSE<br /><br /><br /><b>Environment : </b>This article was written for OpenSUSE 11.2 and 11.1 but should apply to 11.0 installations as well.  This guide applies ONLY to the Intel Compilers Profession <b>Version 11.1 and greater</b>.  If you have an older Intel compiler, please upgrade to 11.1.  Compatibility of OpenSUSE 11.2 with anything other than Intel Compiler Pro 11.1 is not guaranteed to work - consider getting an older OpenSUSE 10.x or older version to work with your older Intel compiler.<br /><br /><br /><b>Root Cause : </b>As of this writing OpenSUSE 11.2 is not officially supported by the Intel Compiler Professional edition. The procedures herein are intended to assist the user configure OpenSUSE to support installation of the Intel Compiler Professional Edition.  However, this is not a supported configuration.  Please see your Release Notes document for a list of officially supported Linux distributions and versions.<br /><br />The default OpenSUSE installation may not have all the packages needed to support software development (gcc, g++, and binutils packages along with header files).  Also, the Intel compiler released versions are targeted and built for distributions available 12-16 months before the compiler is actually released to customers.  Thus, by the time development is completed for a particular compiler version, many Linux distributions have progressed forward one or two versions.  Intel tries to stay current with Linux distributions, but it often takes us many months after a distribution release to add support.  See your Release Notes from the compiler documentation to determine supported distributions and versions.<br /><br /><br /><b>Resolution : </b>Add several packages to your OpenSUSE installation PRIOR to installation of the compiler.<br /><br /><br /><b>Procedure:</b><br /><br /><b>00) Remove any previous failed installations: </b><br />If you have an installation of the Intel Compiler Pro v11.1 on your system from a failed attempt, uninstall it.  <br />/opt/intel/Compiler/11.1/046/bin/[ia32 | intel64]/uninstall_cpro[c | f].sh<br /><br />substitute your version for "046" above if you have another version besides 11.1.046<br /><br /><br /><b>0) First determine whether you have installed a 32bit or 64bit version of OpenSUSE.  Do this with the uname -a command:</b><br /><br />uname -m<br /><br />which will return:<br /> x86_64   if you have a 64bit installation<br /> i686  if you have a 32bit installation<br /><br />Based on whether you have a 32bit or 64bit installation, choose one of the 2 procedures below.<br /><br /><br /><br /><br /><b>1)  i686 32bit Installation</b><br /><br /><b>a) login as root or super user.</b> <br />If you do not have the root password or priviledge, check if you have SUDO priviledges.  <br />If you do not have either root/admin or SUDO priviledges STOP.  You will be unable to install the Intel compilers on this installation until you are able to add system-wide packages as a root or admin user.<br />If you use SUDO to gain access, open a root window with this command:<br /> sudo bash<br /><br /><b>b) Add Base Development and C/C++ Development</b><br />start Yast2 in interactive mode.  From the root window:   yast2<br />When the graphical admin tool Yast2 opens, there is a button (lower right) for "Software Manager".<br />Click Software Manager button to open the Software Manager tool.  <br />On this Software Manager window, find the "Filter" pull-down.  Set Filter to "Patterns" to display groups of packages in the left-hand list of package groups.  Scroll down in this list to find the group named "Development".<br />Under the "Development" group, select the following package sets to install:<br /> "Base Development"<br /> "C/C++ Development"<br /><br />in addition, if you are installing the Intel C++ compiler and wish to use Eclipse integration, also install the "Integrated Development Environments"/"Eclipse" package set.<br /><br />Once these package sets are select, select "Install" to install the developer packages on your system.<br /><br /><b>c) Install 32bit gcc and g++ 3.3 and make the default</b><br />From the terminal window, as root:<br /><br />zypper install gcc33-32bit<br />zypper install libstdc++33-32bit<br /><br />Try the installation of the Intel Compiler at this point.  If this does not work, consider doing the following:<br /> rm /usr/bin/gcc<br /> ln -s /usr/bin/gcc-3.3 /usr/bin/gcc<br /><br />You may now proceed with an installation of the Intel Compilers.<br /><br /><br /><b>2) x86_64 64bit OS Installation</b><br /><br /><b>a) login as root or super user.</b> <br /> If you do not have the root password or priviledge, check if you have SUDO priviledges.  <br /> If you do not have either root/admin or SUDO priviledges STOP.  You will be unable to install the Intel compilers on this installation until you are able to add system-wide packages as a root or admin user.<br /> If you use SUDO to gain access, open a root window with this command:<br /> sudo bash<br /> <br /> <b>b) Add Base Development and C/C++ Development</b><br /> start Yast2 in interactive mode.  From the root window:   yast2<br /> When the graphical admin tool Yast2 opens, there is a button (lower right) for "Software Manager".<br /> Click Software Manager button to open the Software Manager tool.  <br /> On this Software Manager window, find the "Filter" pull-down.  Set Filter to "Patterns" to display groups of packages in the left-hand list of package groups.  Scroll down in this list to find the group named "Development".<br /> Under the "Development" group, select the following package sets to install:<br /> "Base Development"<br /> "C/C++ Development"<br /> <br /> in addition, if you are installing the Intel C++ compiler and wish to use Eclipse integration, also install the "Integrated Development Environments"/"Eclipse" package set.<br /> <br /> Once these package sets are select, select "Install" to install the developer packages on your system.<br /> <br /> <b>c) Install gcc and g++ 3.3 </b><br /> From the terminal window, as root:<br /> <br /> zypper install gcc33<br /> zypper install libstdc++33<br />zypper install libstdc++33-32bit<br /><br />At this point you are ready to install the 64bit versions of the Intel Compiler.  But before you do, read below:<br /><br /><b>d) Determine if you want or need to develop 32bit applications</b><br />Up to this point you have everything you need to install the 64bit Intel compilers and develop 64bit applications.  If this is all you need, locate the Intel compiler tarball named *_intel64.tgz, for example, l_cprof_p_11.1.046_intel64.tgz and install.  <br />IF you want to be able to create 32bit applications AND 64bit applications:<br /><br />zypper install gcc33-32bit<br /> <br /> <br /> You may now proceed with an installation of the Intel Compilers.  Use the combined IA-32 and Intel64 package, for example l_cprof_p_11.1.046.tgz.<br /><br /><br />Finishing up:  Usage<br /><br />Once the compilers are installed, it is necessary to source the ifortvars.sh or ifortvars.csh file to properly set the user environment to use the Intel compilers.  This (these) commands can be placed in a user's ~/.bashrc or other system login file (fortran 11.1.046 example shown below, bash user):<br /><br />64bit compiler selection:<br /> source /opt/intel/Compiler/11.1/046/bin/ifortvars.sh intel64<br /><br />32bit compiler selection:<br /> source /opt/intel/Compiler/11.1/046/bin/ifortvars.sh  ia32 <br /><br />C/C++ users: substitute "iccvars" for "ifortvars" above.<br /><br />Other versions: substitute your actual minor version for "046" above.  <br />Also, if you are a CSH or TCSH user, use ifortvars.csh or iccvars.csh as appropriate.<br /><br /><br /><b>It is hoped this guide proves helpful for installing the Intel Compilers Professional Edition on an OpenSUSE installation.  Please add comments to this article if you have suggestions or tips to improve this guide.<br /></b><br /><br /></div> ]]></description>
      <link>http://software.intel.com/en-us/articles/installing-intel-compilers-on-opensuse</link>
      <pubDate>Wed, 22 Jul 2009 09:36:56 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/installing-intel-compilers-on-opensuse#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/installing-intel-compilers-on-opensuse</guid>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
    </item>
    <item>
      <title>Intel Visual Fortran Pro for Linux Notes On gprof Use</title>
      <description><![CDATA[ <br />
<div id="art_pre_template"><b>Problem : </b>I used the '-pg' option with ifort to compile my code for gprof profiling.  After running my program I used gprof to view the results from the profile stored in gmon.out.  I see my main program and some of my functions and subroutines profiles.  However, several of my main subroutines and functions are not shown and I know they use a lot of cpu cycles.  Why are my functions not appearing in the gprof profile?<br /><br /><br /><b>Environment : </b>Linux.  Intel Fortran for Linux. Compile your application with the -pg option.  Run your application.  Then bring up your profile report with the command: <br /> gprof &lt;applicaton executable name&gt; gmon.out<br /><br /><br /><b>Root Cause : </b>There are 2 possible causes.  You could be experiencing the effects of one or both of these root causes.<br /><ol>
<li>inlining (a performance optimization) may have replaced the calls to your user functions with inline expansion of those functions</li>
<br />
<li>Intel Fortran for Linux versions 11.0.081 and older compilers generate symbolic names for contained procedures that gprof does not recognize.</li>
</ol><br /><br /><b>Resolutions : </b>Each listed below:<br /><br /><ol>
<li><b>Inlining removing function calls:</b> disable inline optimization.  To turn off the inlining of user functions.  This is done by compiling with the option -fno-inline-functions.</li>
<li><b>Contained Procedures have symbolic names incompatible with gprof for versions 11.0.081 and older</b>: There are 2 solutions:</li>
</ol><ol> </ol>
<blockquote>
<ul>
<li>Upgrade your Intel Fortran for Linux to versions 11.0.083 or 11.1 (original release or any update version thereafter).  There was a fix to these newer compilers to create symbol names for contained procedures that gprof is able to track (see information below).</li>
<li>For 11.0.081 and older compilers, you can explicitly change the symbolic names using the ATTRIBUTES ALIAS to force the exported symbol name to be compatible with gprof.  An example:</li>
</ul>
</blockquote>
<ol> </ol> <code>program gproftest<br /> integer :: i = 0<br /> do  while ( i &lt; 1,1000000 )<br /> call suba(i)<br /> end do<br />contains<br /> <b>!DEC$ ATTRIBUTES ALIAS:'suba':: suba</b><br /> subroutine suba(i)<br /> integer, intent(inout) :: i<br /> i = i + 1<br /> end subroutine suba<br />end program gproftest</code><br /> <br />It may seem redundant to use ALIAS to force the name of 'suba' to 'suba' but it does have an effect on the way the symbolic name for suba is generated by the compiler and stored in the object file.   With the code above, we can see the symbolic name for suba is "suba":<br /><br /> <code>ifort -c -pg gproftest.f90<br />nm gproftest.o | grep -i suba<br />0000000000000080 t <b>suba</b></code><br /><br />The symbol for suba is undecorated and compatible with gprof profile analysis.  By contrast, if we do not use the ATTRIBUTES ALIAS (this is with the 11.0.081 and older compilers)<br /><br /><code>program gproftest<br /> integer :: i = 0<br /> do  while ( i &lt; 1,1000000 )<br /> call suba(i)<br /> end do<br />contains<br /> subroutine suba(i)<br /> integer, intent(inout) :: i<br /> i = i + 1<br /> end subroutine suba<br />end program gproftest</code><br /><br /><code>ifort -c -pg gproftest.f90<br />nm gproftest.o | grep -i suba<br />0000000000000080 t <b>gproftest_.suba_</b></code><br /><br />As we see above, the decoration for internal procedure 'suba' gets extensive decoration with the older 11.0.081 compiler and includes the "." (dot) decorator.<br /><br />gprof was adapted to work with gfortran and g95 which uses the internal procedure name + dot "." + followed by a numeric value for names that contain a dot.  Here is a example of symbolic names used by various compilers:<br /> <br /><code> ifort 11.0.081     gproftest_.suba_<br /> gfortran 4.4       suba.1532<br /> g95 4.0.0          suba_.383<br /> NAG Fort           gproftest_IP_suba </code><br /> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="ProgId" content="PowerPoint.Slide" />
<meta name="Generator" content="Microsoft PowerPoint 2008" />
<!--StartFragment--><br />Again, the Intel compiler used in this example is the older 11.0.081 compiler.   gprof is not able to recognize the symbol in the form used by the older Intel compilers.  gprof, when it sees the dot "." in the name is expecting a numeric to follow, such as used by gfortran and g95.  Thus, this decoration scheme used by older Intel compilers for internal procedures is incompatible.<br /><br />As of Intel Fortran Compiler Professional Edition for Linux version 11.0.083 and newer Intel adapted a decoration scheme similar to that used by the NAG Fortran compiler:<br /><br /><code>ifort -v<br />Version 11.1 <br />ifort -pg -c gproftest.f90<br />nm gproftest.o | grep -i suba<br />0000000000000080 t gproftest_IP_suba_</code><br /><br /><b>Summary:</b><br /><br />to get full information on internal procedures and functions that could be inlined, it is recommended to:<br /><br /><ol>
<li>Use the latest Intel Fortran Compiler Pro for Linux version 11.1</li>
<li>Disable function inlining using the -fno-inline-functions</li>
</ol></div> ]]></description>
      <link>http://software.intel.com/en-us/articles/intel-visual-fortran-pro-for-linux-notes-on-gprof-use</link>
      <pubDate>Wed, 01 Jul 2009 15:33:06 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-visual-fortran-pro-for-linux-notes-on-gprof-use#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-visual-fortran-pro-for-linux-notes-on-gprof-use</guid>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
    </item>
    <item>
      <title>Performance Tools for Software Developers - Intel® compiler&amp;#39;s dependency on /usr/lib/libstdc++.so.5</title>
      <description><![CDATA[ <!--CTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dt-->
<table border="0" cellspacing="15" cellpadding="0">
<tbody>
<tr>
<td class="bodycopy">
<p>Product improvements in the Intel® C++ and Fortran 10.x compilers for Linux*, and continued with the 11.x releases, require linkage to a Standard C++ library on <strong>*all*</strong> IA-32, Intel® 64, and IA-64 processor-based Linux systems. Intel® 10.x and 11.x compilers are linked to the <strong>/usr/lib/libstdc++.so.5</strong> library by design to permit use of the Intel 10.x and 11.x compilers on GCC* 3.2-based Linux distributions.</p>
<p>Many Linux distributions available today are GCC* 3.4-based and thus by default provide the newer Standard C++ library, <strong>/usr/lib/libstdc++.so.6</strong>. Therefore, installation and use of the Intel C++ and Fortran 10.x and 11.x compilers for Linux on GCC 3.4-based Linux distributions may require explicit user action to install the Standard C++ library compatibility RPM, <strong>compat-libstdc++</strong>, that provides the required <strong>/usr/lib/libstdc++.so.5</strong> library.</p>
<p>Please refer to your Linux distribution's installation materials for details on the <strong>compat-libstdc++</strong> RPM and installing specific RPMs.</p>
</td>
</tr>
</tbody>
</table>
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td><img src="http://software.intel.com/file/6324" alt="" width="388" height="5" /></td>
</tr>
<tr>
<td height="10"> </td>
</tr>
</tbody>
</table> ]]></description>
      <link>http://software.intel.com/en-us/articles/performance-tools-for-software-developers-intel-10x-compilers-dependency-on-usrliblibstdcso5</link>
      <pubDate>Wed, 13 May 2009 07:24:27 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/performance-tools-for-software-developers-intel-10x-compilers-dependency-on-usrliblibstdcso5#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/performance-tools-for-software-developers-intel-10x-compilers-dependency-on-usrliblibstdcso5</guid>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
    </item>
    <item>
      <title>Intel Architecture Platform Terminology for Development Tools</title>
      <description><![CDATA[ <p>Intel® compilers and libraries support three platforms: general combinations of processor architecture and operating system type. This section explains the terms that Intel uses to describe the platforms in its documentation, installation procedures and support site.  <strong>Note:</strong> not all Intel software development tools support all three platforms.</p>
<p><strong>IA-32 Architecture</strong> refers to systems based on 32-bit processors generally compatible with the Intel Pentium® II processor, (for example, Intel® Pentium® 4 processor or Intel® Xeon® processor), or processors from other manufacturers supporting the same instruction set, running a 32-bit operating system.</p>
<p><strong>Intel® 64 Architecture</strong> (formerly Intel® EM64T)refers to systems based on IA-32 architecture processors which have 64-bit architectural extensions, (for example, Intel® Core™2 processor family), running a 64-bit operating system such as Microsoft Windows Vista* x64 or a Linux* "x86_64" variant. If the system is running a 32-bit  operating system, then IA-32 architecture applies instead. Systems based on AMD* processors running a 64-bit operating system are also supported by Intel compilers for Intel® 64 architecture applications.</p>
<p>64-bit computing on Intel architecture requires a computer system with a processor, chipset, BIOS, operating system, device drivers and applications enabled for Intel® 64 architecture. Performance will vary depending on your hardware and software configurations. Consult with your system vendor for more information.</p>
<p><strong>IA-64 Architecture</strong> refers to systems based on the Intel® Itanium® processor running a 64-bit operating system.</p> ]]></description>
      <link>http://software.intel.com/en-us/articles/intel-architecture-platform-terminology</link>
      <pubDate>Thu, 12 Feb 2009 07:48:07 -0800</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-architecture-platform-terminology#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-architecture-platform-terminology</guid>
      <category>Software Products General</category>
      <category>Intel® Parallel Advisor</category>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® C++ Compiler for Windows* Knowledge Base</category>
      <category>Intel® Software Development Tool Suites for Intel® Atom™ Processor Knowledge Base</category>
      <category>Intel® Cluster Toolkit for Linux* Knowledge Base</category>
      <category>Intel® Cluster Toolkit for Windows* Knowledge Base</category>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
      <category>Intel® Math Kernel Library Knowledge Base</category>
      <category>Intel® Parallel Amplifier Knowledge Base</category>
      <category>Intel® Parallel Composer Knowledge Base</category>
      <category>Intel® Parallel Inspector Knowledge Base</category>
      <category>Intel® Thread Checker for Windows* Knowledge Base</category>
      <category>Intel® Thread Profiler for Windows* Knowledge Base</category>
      <category>Intel® Threading Building Blocks Knowledge Base</category>
      <category>Intel® Trace Analyzer and Collector for Linux* Knowledge Base</category>
      <category>Intel® Trace Analyzer and Collector for Windows* Knowledge Base</category>
      <category>Intel® Visual Fortran Compiler for Windows* Knowledge Base</category>
    </item>
    <item>
      <title>Intel® Fortran Compiler - Supported compiler versions</title>
      <description><![CDATA[ <p>The following compiler versions are supported:</p>
<li>Intel® Fortran Compiler 11.1 for Linux*</li>
<li>Intel® Fortran Compiler 10.1 for Linux*</li>
<li>Intel® Fortran Compiler 11.1 for Mac* OS</li>
<li>Intel® Fortran Compiler 10.1 for Mac* OS</li>
<li>Intel® Visual Fortran Compiler 11.1 for Windows*</li>
<li>Intel® Visual Fortran Compiler 10.1 for Windows*</li>
<br /><br />Interactive support via <a href="https://premier.intel.com">Intel® Premier Support</a> is provided for the two most recent compiler releases. Older compiler versions are not supported.<br /><br />If you have any questions about this policy, contact <a href="https://premier.intel.com">Intel® Premier Support</a>.
<p> </p> ]]></description>
      <link>http://software.intel.com/en-us/articles/intel-fortran-compiler-supported-compiler-versions</link>
      <pubDate>Thu, 25 Sep 2008 12:51:18 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-fortran-compiler-supported-compiler-versions#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-fortran-compiler-supported-compiler-versions</guid>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
      <category>Intel® Fortran Compiler for Mac OS X* Knowledge Base</category>
      <category>Intel® Visual Fortran Compiler for Windows* Knowledge Base</category>
    </item>
    <item>
      <title>Intel® Fortran Compiler for Linux* - Compatibility with the GNU Compilers</title>
      <description><![CDATA[ <table border="0" cellspacing="15" cellpadding="0">
<tbody>
<tr>
<td class="bodycopy">
<p>For information on compatibility between the Intel® Compilers for Linux and GNU compilers please see the whitepaper  <a href="http://www.intel.com/cd/software/products/asmo-na/eng/compilers/284736.htm">Intel® Compilers for Linux*: Compatibility with GNU Compilers [PDF]</a><br />

<img src="http://software.intel.com/file/6408" alt="" width="1" height="10" /></p>
<p class="bodycopy"><span style="font-family: Arial,Helvetica,sans-serif; font-size: x-small;"><strong>Note:</strong> PDF Files require  <a href="javascript:ShowNewPdf(&quot;http://www.adobe.com/products/acrobat/readstep2.html&quot;)" target="_top">Adobe Acrobat* Reader</a><sup>†</sup></span></p>
<br /><img src="http://software.intel.com/file/6408" alt="" width="1" height="10" /><br />
<p class="xs"><span style="font-family: Arial,Helvetica,sans-serif; font-size: xx-small;"> <sup>†</sup> This link will take you off of the Intel Web site. Intel does not control the content of the destination Web Site.</span></p>
</td>
</tr>
</tbody>
</table> ]]></description>
      <link>http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-compatibility-with-the-gnu-compilers</link>
      <pubDate>Fri, 19 Sep 2008 00:00:00 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-compatibility-with-the-gnu-compilers#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-compatibility-with-the-gnu-compilers</guid>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
    </item>
    <item>
      <title>Intel® Fortran Compiler for Linux* - Are the libraries thread safe?</title>
      <description><![CDATA[ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><body>
<table border="0" cellspacing="15" cellpadding="0"><tr><td class="bodycopy"><p>The default Fortran RTL, libifcore, is not thread safe. To get the thread safe version of the Fortran RTL, libifcoremt, you need to specify one of the following options: -threads, -openmp, or -parallel.</p></td></tr></table>
<table border="0" cellspacing="0" cellpadding="0">
<tr><td><img src="http://software.intel.com/file/6324" width="388" height="5"></td></tr>
<tr><td height="10"></td></tr>
</table>
</body></html>
 ]]></description>
      <link>http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-are-the-libraries-thread-safe</link>
      <pubDate>Fri, 19 Sep 2008 00:00:00 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-are-the-libraries-thread-safe#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-are-the-libraries-thread-safe</guid>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
    </item>
  </channel></rss>