<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated on Sun, 22 Nov 2009 16:25:07 -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-mac-os-x-kb/type/technical-notes/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-mac-os-x-kb/technical-notes/</link>
    <description></description>
    <language>en-us</language>
    <item>
      <title>Intel® Fortran Compiler for Linux* - Invoking the compiler</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" cellpadding="0" cellspacing="15">
<tbody>
<tr>
<td class="bodycopy">
<p>For 11.x compilers (10.x compilers did not need an argument), enter:</p>
<p>$ source &lt;path-to-ifort-bin-dir&gt;/ifortvars.sh (bash) &lt;arg&gt;</p>
<p>% source &lt;path-to-ifort-bin-dir&gt;/ifortvars.csh (csh) &lt;arg&gt;</p>
<p>The environment script takes an argument based on architecture; valid arguments are as follows:</p>
<p>· ia32: Compilers and libraries for IA-32 architectures only.</p>
<p>· intel64: Compilers and libraries for Intel(R) 64 architectures only.</p>
<p>· ia64: Compilers and libraries for IA-64 architectures only.<br /><br />Then type <strong>ifort</strong> to invoke the Fortran Compiler.</p>
</td>
</tr>
</tbody>
</table>
<table border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td><img width="388" src="http://software.intel.com/file/6324" height="5" /></td>
</tr>
<tr>
<td height="10"></td>
</tr>
</tbody>
</table> ]]></description>
      <link>http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-invoking-the-compiler</link>
      <pubDate>Wed, 04 Nov 2009 11:22:37 -0800</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-invoking-the-compiler#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-invoking-the-compiler</guid>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
      <category>Intel® Fortran Compiler for Mac OS X* 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>Error while copying license file - Intel(R) Compilers for Mac OS X</title>
      <description><![CDATA[ <br />
<div><strong>Problem : <br /><br /></strong>During installation, an error message of "Error while copying license file. Please make sure you have write permission to the license folder" will result if the user does not have write permission to the directory /Users/Shared/Library/Application\ Support/Intel/Licenses. <br /><br /><strong></strong></div>
<div><strong>Environment : <br /><br /></strong>Mac OS X, Intel Compiler 11.1</div>
<div>A related article pertaining to Mac OS X, Intel Compiler 9.1, 10.1, 11.0 can be found <a href="http://software.intel.com/en-us/articles/invalid-serial-number-intelr-compilers-for-mac-os-x/">here</a>.<br /><br /><br /><strong>Root Cause : <br /><br /></strong>The error "Error while copying license file. Please make sure you have write permissions to the license folder." will appear if the user does not have write permission to the directory /Users/Shared/Library/Application\ Support/Intel/Licenses.<strong> <br /><br /></strong>This directory by default has write permission enabled, however, installation of other third party products such as Adobe products might change the permission for this directory. This change in permission will result in an error during installation of Intel(R) Compiler Products because the installer can not create a license file in this directory.<br /><br />Even if the user provide their own license file instead of a serial number, the error will still occur if the installer can not copy the license to the directory /Users/Shared/Library/Application\ Support/Intel/Licenses.<br /><br /><br /><br /><strong>Resolution : <br /><br /></strong>Assuming that you have a valid serial number or product license, the solution is to enable write permission for the directory Users/Shared/Library/Application\ Support/Intel/Licenses.<br /><br /><br /><br /></div> ]]></description>
      <link>http://software.intel.com/en-us/articles/error-while-copying-license-file-intelr-compilers-for-mac-os-x</link>
      <pubDate>Mon, 03 Aug 2009 11:27:03 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/error-while-copying-license-file-intelr-compilers-for-mac-os-x#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/error-while-copying-license-file-intelr-compilers-for-mac-os-x</guid>
      <category>Tools</category>
      <category>Intel® C++ Compiler for Mac OS X* Knowledge Base</category>
      <category>Intel® Fortran Compiler for Mac OS X* Knowledge Base</category>
    </item>
    <item>
      <title>Intel® Fortran Compiler - Support for Fortran language standards</title>
      <description><![CDATA[ <p>Intel® Fortran is fully compliant with the ISO/IEC 1539:1997 Fortran language   standard (Fortran 95). Intel Fortran also fully supports programs that conform   to the earlier standards Fortran 90, FORTRAN 77 and FORTRAN IV (FORTRAN 66.)   In some cases, compiler options may need to be specified to enable support   of behavior that was different in earlier versions of the Fortran standard.</p>
<p>The Intel Fortran compiler supports many features that are new to the latest   revision of the Fortran standard, Fortran 2003 (ISO/IEC 1539:2004 ). Additional   Fortran 2003 features will appear in future versions. Fortran 2003 features   supported by the  version 11.1 compiler include:</p>
<ul>
<li>The Fortran character set has been extended to contain the 8-bit ASCII     characters ~ [ ] ` ^ { } | # @</li>
<li>Names of length up to 63 characters</li>
<li>Statements of up to 256 lines</li>
<li>Square brackets [ ] are permitted to delimit array constructors instead     of (/ /)</li>
<li>Structure constructors with component names and default initialization</li>
<li>Array constructors with type and character length specifications</li>
<li>A named PARAMETER constant may be part of a complex constant</li>
<li>Enumerators</li>
<li>Allocatable components of derived types</li>
<li>Allocatable scalar variables</li>
<li>Deferred-length character entities</li>
<li>PUBLIC types with PRIVATE components and PRIVATE types with PUBLIC components</li>
<li>ERRMSG   keyword for ALLOCATE and DEALLOCATE</li>
<li>SOURCE= keyword for ALLOCATE</li>
<li>Type     extension</li>
<li>CLASS declaration</li>
<li>Polymorphic entities</li>
<li>Inheritance association</li>
<li>Deferred bindings and abstract types</li>
<li>Type-bound procedures</li>
<li>TYPE CONTAINS declaration</li>
<li>ABSTRACT attribute</li>
<li>DEFERRED attribute</li>
<li>NON_OVERRIDABLE attribute</li>
<li>ASYNCHRONOUS attribute and statement</li>
<li>BIND(C) attribute and statement</li>
<li>PROTECTED attribute and statement</li>
<li>VALUE attribute and statement</li>
<li>VOLATILE attribute and statement</li>
<li>INTENT attribute for pointer objects</li>
<li>Reallocation of allocatable variables on the left hand side of an assignment     statement when the right hand side differs in shape or length (requires option "assume     realloc_lhs")</li>
<li>ASSOCIATE construct </li>
<li>SELECT TYPE construct</li>
<li>In all I/O statements, the following numeric values can be of any kind:     UNIT=, IOSTAT=</li>
<li>NAMELIST I/O is permitted on an internal file</li>
<li>Restrictions on entities in a NAMELIST group are relaxed</li>
<li>FLUSH statement</li>
<li>WAIT statement</li>
<li>ACCESS='STREAM' keyword for OPEN</li>
<li>ASYNCHRONOUS keyword for OPEN and data transfer statements</li>
<li>ID keyword for INQUIRE and data transfer statements</li>
<li>POS keyword for data transfer statements</li>
<li>PENDING keyword for INQUIRE</li>
<li>The following OPEN numeric values can be of any kind: RECL=</li>
<li>The following READ and WRITE numeric values can be of any kind: REC=, SIZE=</li>
<li>The following INQUIRE numeric values can be of any kind: NEXTREC=, NUMBER=,     RECL=, SIZE=</li>
<li>Recursive I/O is allowed in the case where the new I/O being started is     internal I/O that does not modify any internal file other than its own</li>
<li>IEEE Infinities and NaNs are displayed by formatted output as specified     by Fortran 2003</li>
<li>BLANK, DELIM, ENCODING, IOMSG, PAD, ROUND, SIGN, SIZE I/O keywords</li>
<li>DC,     DP, RD, RC, RN, RP, RU, RZ format edit descriptors</li>
<li>In an I/O format, the comma after a P edit descriptor is optional when     followed by a repeat specifier</li>
<li>Rename of user-defined operators in USE</li>
<li>INTRINSIC and NON_INTRINSIC keywords in USE</li>
<li>IMPORT statement</li>
<li>Allocatable dummy arguments</li>
<li>Allocatable function results</li>
<li>PROCEDURE declaration</li>
<li>Procedure pointers</li>
<li>ABSTRACT INTERFACE</li>
<li>PASS     and NOPASS attributes</li>
<li>Execution of a STOP statement displays a warning if an IEEE floating point exception is signaling</li>
<li>The COUNT_RATE argument to the SYSTEM_CLOCK intrinsic may be a REAL of any kind</li>
<li>COMMAND_ARGUMENT_COUNT intrinsic</li>
<li>GET_COMMAND intrinsic</li>
<li>GET_COMMAND_ARGUMENT intrinsic</li>
<li>GET_ENVIRONMENT_VARIABLE intrinsic</li>
<li>IS_IOSTAT_ END intrinsic</li>
<li>IS_IOSTAT_EOR intrinsic</li>
<li>MAX/MIN/MAXVAL/MINVAL/MAXLOC/MINLOC intrinsics allow CHARACTER arguments</li>
<li>MAXLOC or MINLOC of a zero-sized array returns zero (requires option "assume noold_maxminloc")</li>
<li>MOVE_ALLOC intrinsic</li>
<li>NEW_LINE intrinsic</li>
<li>SELECTED_CHAR_KIND intrinsic</li>
<li>The following intrinsics take an optional KIND= argument: ACHAR, COUNT,     IACHAR, ICHAR, INDEX, LBOUND, LEN, LEN_TRIM, MAXLOC, MINLOC, SCAN, SHAPE,     SIZE, UBOUND, VERIFY</li>
<li>Type inquiry intrinsic functions</li>
<li>ISO_C_BINDING intrinsic module</li>
<li>IEEE_EXCEPTIONS, IEEE_ARITHMETIC and IEEE_FEATURES intrinsic modules</li>
<li>ISO_FORTRAN_ENV intrinsic module</li>
</ul>
<p>Please see the compiler release notes for an updated list.</p>
<p>The Intel Fortran compiler also supports some features from the draft Fortran   2008 standard. These include:</p>
<ul>
<li>Passing internal procedures as actual arguments</li>
<li>A procedure pointer can point to an internal procedure</li>
<li>In ALLOCATE, if source-object does not have a shape specified, the shape     is taken from the SOURCE= argument </li>
</ul>
<p>Intel Fortran also includes a number of extensions to Fortran 2003, as well   as command-line options that allow you to override the default actions of the   compiler.</p>
<p>In some cases, the default behavior of the Intel Fortran Compiler does not conform to Fortran 2003 semantics.  The following table lists the compiler options which are not enabled by default and which must be specified to obtain full Fortran 2003 semantics. Note that, in some cases, enabling these options may lower run-time performance.</p>
<table border="1" cellspacing="0" cellpadding="5" width="90%" summary="List of non-default compiler options required to get full Fortran 2003 semantics by the Intel Fortran Compiler.">
<caption> Non-Default Compiler Options for Fortran 2003 Semantics </caption> 
<tbody>
<tr>
<th scope="col">Windows*</th> <th scope="col">Linux* and Mac OS X* </th>
</tr>
<tr>
<td>/assume:byterecl</td>
<td>-assume byterecl</td>
</tr>
<tr>
<td>/assume:minus0</td>
<td>-assume minus0</td>
</tr>
<tr>
<td>/assume:noold_maxminloc</td>
<td>-assume noold_maxminloc</td>
</tr>
<tr>
<td>/assume:noold_unit_star</td>
<td>-assume noold_unit_star</td>
</tr>
<tr>
<td>/assume:noold_xor</td>
<td>-assume noold_xor</td>
</tr>
<tr>
<td>/assume:protect_parens</td>
<td>-assume protect_parens</td>
</tr>
<tr>
<td>/assume:realloc_lhs</td>
<td>-assume realloc_lhs</td>
</tr>
<tr>
<td>/assume:std_mod_proc_name</td>
<td>-assume std_mod_proc_name</td>
</tr>
</tbody>
</table>
<p> </p>
<p>For more information, please refer to the "Compiler Options" section of the Intel Fortran Compiler documentation.</p> ]]></description>
      <link>http://software.intel.com/en-us/articles/intel-fortran-compiler-support-for-fortran-language-standards</link>
      <pubDate>Wed, 24 Jun 2009 11:41:12 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-fortran-compiler-support-for-fortran-language-standards#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-fortran-compiler-support-for-fortran-language-standards</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>Performance Tools for Software Developers - Building HDF5* with Intel® compilers</title>
      <description><![CDATA[ <!--page break-->
<hr />
<div class="sectionHeading">Introduction</div>
<p>This guide is intended to help Intel® compiler customers build and use the HDF5 library. HDF5 is the latest generation of the HDF libraries, a general purpose library and associated file formats for storing and sharing scientific data. HDF5 is maintained, promoted, and co-developed along with active community support by The HDF Group (THG). THG is a not-for-profit corporation with the mission to sustain HDF technologies and to provide support to HDF user communities. The homepage for THG and HDF5 can be found at <a href="http://hdf.ncsa.uiuc.edu/HDF5/">http://hdf.ncsa.uiuc.edu/HDF5/</a>.</p>
<!--page break-->
<hr />
<div class="sectionHeading">Version information</div>
<p>This application note applies to HDF5, version 1.6.5, as built with the Intel® Fortran Compiler 10.0 and Intel® C++ Compiler 10.0. The procedure outlined in this document are tested with the 10.0 versions of the Intel Fortran Compiler and Intel C++ compiler. Prior versions of the Intel compilers may work as well, but have not been tested. Older verions or newer versions of HDF may work but have not been tested. This document only covers the 10.0 versions of the Intel compilers and HDF5, version 1.6.5.</p>
<!--page break-->
<hr />
<div class="sectionHeading">Application notes</div>
<p>HDF5 is a data format and an associated software library designed to store, access, manage, exchange, and archive diverse, complex data in continuously evolving heterogeneous computing and storage environments. HDF5 is extensively used with scientific research, engineering development, and other data.</p>
<p>This application note demonstrates the framework for building HDF5 with the Intel compilers but does NOT claim to represent all possible configurations and variations of the build for all possible target environments.</p>
<!--page break-->
<hr />
<div class="sectionHeading">Obtaining the source code</div>
<p>The HDF5 source files should be obtained from HDF5 Software downloads page at <a href="http://www.hdfgroup.org/HDF5/release/obtain5.html"></a>http://www.hdfgroup.org/HDF5/release/obtain5.html.</p>
<p>Please note the External Library requirements for SZIP and ZLIB and download those if you do not already have those libraries.</p>
<!--page break-->
<hr />
<div class="sectionHeading">Obtaining the latest version of Intel C++ Compiler and Intel Fortran Compiler</div>
<p>Licensed users of the Intel compilers may download the most recent versions of the compiler from the Intel® Download Center, which is accessed by logging into your account at <a href="https://registrationcenter.intel.com/">Intel® Registration Center</a></p>
<!--page break-->
<hr />
<div class="sectionHeading">Obtaining evaluation versions of Intel compilers</div>
<p>Intel® Compilers for Linux* <br /><a href="http://www.intel.com/cd/software/products/asmo-na/eng/compilers/284264.htm">http://www.intel.com/cd/software/products/asmo-na/eng/compilers/284264.htm</a></p>
<p>Intel® Compilers for Mac OS* <br /><a href="http://www.intel.com/cd/software/products/asmo-na/eng/270528.htm">http://www.intel.com/cd/software/products/asmo-na/eng/270528.htm</a></p>
<!--page break-->
<hr />
<div class="sectionHeading">Prerequisites</div>
<p><strong>Software</strong>: As mentioned on the HDF5 software downloads page, either SZIP-2.0 or ZLIB libraries can be used for file compression/decompression. Precompiled binaries or sources are available from the HDF5 Software Downloads page for these two libraries.</p>
<p><strong>SZIP:</strong> Determine an appropriate location to install SZIP. /usr/local/szip-2.0 may be a reasonable choice. If you wish to build and install szip from the source files, use the procedure shown below:</p>
<blockquote>export CC=icc <br />export CXX=icpc <br />export F77=ifort <br />export CFLAGS='-O3 -xP -ip' <br />export CXXFLAGS='-O3 -xP -ip' <br />export FFLAGS='-O3 -xP -ip' <br />tar -zxvf szip-2.0.tar.gz <br />cd szip-2.0 <br />./configure --prefix=/usr/local/szip-2.0 <br />make <br />make check <br />make install</blockquote>
<p>The above example uses the BASH shell syntax for setting environment variables. For other shells, use the appropriate commands to set environment variables <strong>CC, CXX</strong>, etc. before the make command. Confirm that after the 'make check' command, the result of the tests return the result "<strong>All test passed.</strong>"</p>
<p>Check the directory specified by your <strong>--prefix=</strong> setting. This directory should contain <strong>lib/</strong> and <strong>include/</strong> directories. For more information on building szip, consult the file named <strong>INSTALL</strong> in the source directory.</p>
<p><strong>ZLIB:</strong> The information shown is for zlib version 1.2.1. zlib is a general purpose data compression library and is a prerequisite for building HDF5. Determine an appropriate location to install SZIP. /usr/local/zlib-1.2.1 may be a reasonable choice. If you wish to build and install szip from the source files, use the procedure shown below:</p>
<blockquote>export CC=icc <br />export CFLAGS='-O3 -xP -ip' <br />tar -zxvf zlib-1.2.1.tar.gz <br />cd zlib-1.2.1 <br />./configure --prefix=/usr/local/zlib-1.2.1 <br />make <br />make check <br />make install<br /></blockquote>
<p>The above example uses the BASH shell syntax for setting environment variables. For other shells, use the appropriate commands to set environment variables <strong>CC, CXX</strong>, etc. before the make command. Confirm that after the 'make check' command, the result of the tests return the result "<strong>All test passed</strong>".</p>
<p>Check the directory specified by your <strong>--prefix=</strong> setting. This directory should contain <strong>lib/, include/, and share/</strong> directories. For more information on building szip, consult the file named "<strong>INSTALL"</strong> in the source directory.</p>
<!--page break-->
<hr />
<div class="sectionHeading">Configuration and set-up information for HDF5</div>
<p>HDF5 uses an Autoconf "configure" script to determine the build environment and tools and create the necessary build configuration. The first step is to set environment variables to control which compilers are used for the build. These environment variables select the Intel C++ Compiler and the Intel Fortran Compiler.</p>
<blockquote>export CC=icc <br />export F9X=ifort <br />export CXX=icpc <br /></blockquote>
<p>As shown above, the environment <strong>CC, CXX</strong> and F9X are used to specify which compilers are used to build HDF5. The example shown above uses both the Intel C++ Compiler ( CC=icc CXX=icpc ) and the Intel Fortran Compiler ( F9X=ifort ). <strong>Note that the Intel C++ compiler driver is named 'icpc'. Do NOT use 'icc' as the C++ compiler.</strong> The Intel compilers are GNU compatible, thus you may mix and match the Intel compilers with GNU compilers for C++ and Fortran. However, the mixing of GNU compilers with Intel compilers has not been tested with this application.</p>
<p>There are environment variables such as CFLAGS to pass compiler options to the C compiler. However, the configuration script will automatically detect the Intel compilers and use the appropriate optimization options. Thus, the user need not specify optimization settings unless one wants to override the default settings set by configure.</p>
<!--page break-->
<hr />
<div class="sectionHeading">To extract the source files and to configure and build HDF5</div>
<blockquote>tar -zxvf hdf5-1.6.5.tar.gz <br />cd hdf5-1.6.5 <br />./configure --prefix=/usr/local/hdf5-1.6.5 --enable-fortran --enable-cxx <br />... output of configure ... <br />make <br />... watch for fatal errors ... <br />make check <br />... verify that all tests return "PASS" <br />make install<br /></blockquote>
<p>As shown above, the environment <strong>CC, CXX</strong> and F9X are used to specify which compilers are used to build HDF5. The example shown above uses both the Intel C++ Compiler ( CC=icc CXX=icpc ) and the Intel Fortran Compiler ( F9X=ifort ). <strong>Note that the Intel C++ compiler driver is named 'icpc'. Do NOT use 'icc' as the C++ compiler.</strong> The Intel compilers are GNU compatible, thus you may mix and match the Intel compilers with GNU compilers for C++ and Fortran. However, the mixing of GNU compilers with Intel compilers has not been tested with this application.</p>
<p>The configure script has a lot of possible options. To learn all of the possible configuration options, see the help provided in the output of "./configure --help" or read the contents of the file README provided in the OpenMPI tarball.</p>
<!--page break-->
<hr />
<div class="sectionHeading">Using HDF5</div>
<p>There is user documentation in the doc/html subdirectory of the source file directory. Look for the file "index.html" and view this file in a browser. This doc/html directory can be copied over to the installation directory.</p>
<p>In general, user program include &lt;hdf5.h&gt; and link with -lhdf5. Additional libraries may be necessary. Please see the user documentation for all the details on the use of HDF5. Users are encouraged to use the compiler helper scripts h5cc, h5fc and h5c++ to build their applications. These helper scripts are installed in the bin/ subdirectory of the installation directory.</p>
<!--page break-->
<hr />
<div class="sectionHeading">Benefits</div>
<p>This note has shown how to perform a simple build of HDF5* using the Intel compilers. Benefits of using this Intel compiler build of HDF5 include improved optimization and compatibility with the Intel compiler generated binary files and GNU generated binary files.</p>
<!--page break-->
<hr />
<div class="sectionHeading">Known issues and limitations</div>
<p>At this time, there are no known issues with using the Intel compilers to build HDF5. Please see the HDF5 website <a href="http://hdf.ncsa.uiuc.edu/HDF5/">http://hdf.ncsa.uiuc.edu/HDF5/</a> for all known issues and limitations.</p>
<p> </p>
<!--page break-->
<hr /> ]]></description>
      <link>http://software.intel.com/en-us/articles/performance-tools-for-software-developers-building-hdf5-with-intel-compilers</link>
      <pubDate>Wed, 22 Oct 2008 15:50:18 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/performance-tools-for-software-developers-building-hdf5-with-intel-compilers#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/performance-tools-for-software-developers-building-hdf5-with-intel-compilers</guid>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® C++ Compiler for Mac OS X* Knowledge Base</category>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
      <category>Intel® Fortran Compiler for Mac OS X* Knowledge Base</category>
    </item>
    <item>
      <title>Intel® Fortran Compiler for Mac OS* - 9.x manuals</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">
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td><img height="16" alt="icon" src="http://software.intel.com/file/6398" width="16" align="bottom" border="0"></td>
<td class="bodycopy">&nbsp;
<a href="http://software.intel.com/file/6353">Getting Started with the Intel&reg; Fortran Compiler 9.1 for Mac OS*&nbsp;[PDF]</a>
</td>
</tr>
<tr>
<td><img height="3" src="http://software.intel.com/file/6408" width="15"></td>
<td class="bodycopy">
<i>&nbsp;File Name:</i> Getting_Started.pdf
<br><i>&nbsp;Size:</i> 23 KB
<br><em>&nbsp;Date:</em> May 2006</td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td><img height="16" alt="icon" src="http://software.intel.com/file/6398" width="16" align="bottom" border="0"></td>
<td class="bodycopy">&nbsp;
<a href="http://software.intel.com/file/6307">Intel&reg; Fortran Compiler 9.1 for Mac OS* Installation Guide&nbsp;[PDF]</a>
</td>
</tr>
<tr>
<td><img height="3" src="http://software.intel.com/file/6408" width="15"></td>
<td class="bodycopy">
<i>&nbsp;File Name:</i> INSTALL.pdf
<br><i>&nbsp;Size:</i>&nbsp;72 KB
<br><em>&nbsp;Date:</em> May 2006</td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td><img height="16" alt="icon" src="http://software.intel.com/file/6398" width="16" align="bottom" border="0"></td>
<td class="bodycopy">&nbsp;
<a href="http://software.intel.com/file/6310">Intel&reg; Fortran Compiler 9.1 for Mac OS* Release Notes&nbsp;[PDF]</a>
</td>
</tr>
<tr>
<td><img height="3" src="http://software.intel.com/file/6408" width="15"></td>
<td class="bodycopy">
<i>&nbsp;File Name:</i> Release_Notes.pdf
<br><i>&nbsp;Size:</i>&nbsp;82 KB
<br><em>&nbsp;Date:</em> May 2006</td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td><img height="16" alt="icon" src="http://software.intel.com/file/6433" width="16" align="bottom" border="0"></td>
<td class="bodycopy"><a href="http://software.intel.com/file/6352">Intel&reg; Fortran Compiler Documentation&nbsp;[ZIP]</a></td>
</tr>
<tr>
<td><img height="3" src="http://software.intel.com/file/6408" width="15"></td>
<td class="bodycopy">
<i>File Name:</i>&nbsp;ifort_doc.zip
<br><i>Size:</i>&nbsp;4.36 MB
<br><em>Date:</em> May 2006
<br><strong>&nbsp;
<br>Note:</strong> Save the zipped file to a directory on your hard drive. Unzip the entire contents and open index.htm</td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td><img height="16" alt="icon" src="http://software.intel.com/file/6398" width="16" align="bottom" border="0"></td>
<td class="bodycopy">&nbsp;
<a href="http://software.intel.com/file/6386">Intel&reg; Fortran Language Reference&nbsp;[PDF]</a>
</td>
</tr>
<tr>
<td><img height="3" src="http://software.intel.com/file/6408" width="15"></td>
<td class="bodycopy">
<i>&nbsp;File Name:</i> lang_for.pdf
<br><i>&nbsp;Size:</i>&nbsp;5.15 MB
<br><em>&nbsp;Date:</em>
 May 2006</td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td><img height="16" alt="icon" src="http://software.intel.com/file/6398" width="16" align="bottom" border="0"></td>
<td class="bodycopy">&nbsp;
<a href="http://software.intel.com/file/6388">Intel&reg; Fortran Libraries Reference&nbsp;[PDF]</a>
</td>
</tr>
<tr>
<td><img height="3" src="http://software.intel.com/file/6408" width="15"></td>
<td class="bodycopy">
<i>&nbsp;File Name:</i> lib_for.pdf
<br><i>&nbsp;Size:</i>&nbsp;7.86 MB
<br><em>&nbsp;Date:</em> May 2006</td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td><img height="16" alt="icon" src="http://software.intel.com/file/6433" width="16" align="bottom" border="0"></td>
<td class="bodycopy"><a href="http://software.intel.com/file/6363">Intel&reg; Debugger (IDB) Manual&nbsp;[ZIP]</a></td>
</tr>
<tr>
<td><img height="3" src="http://software.intel.com/file/6408" width="15"></td>
<td class="bodycopy">
<i>File Name:</i>&nbsp;idb_linux_docs.zip
<br><i>Size:</i>&nbsp;1.67 MB
<br><em>Date:</em> May 2006
<br><br><strong>Note:</strong> Save the zipped file to a directory on your hard drive. Unzip the entire contents and open index.htm.</td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td><img height="16" alt="icon" src="http://software.intel.com/file/6429" width="16" align="bottom" border="0"></td>
<td class="bodycopy">&nbsp;
<a href="http://software.intel.com/file/6368">ifort man page&nbsp;[TXT]</a>
</td>
</tr>
<tr>
<td><img height="3" src="http://software.intel.com/file/6408" width="15"></td>
<td class="bodycopy">
<i>&nbsp;File Name:</i>&nbsp;ifort.txt
<br><em>&nbsp;Date:</em> May 2006</td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td><img height="16" alt="icon" src="http://software.intel.com/file/6429" width="16" align="bottom" border="0"></td>
<td class="bodycopy">&nbsp;
<a href="http://software.intel.com/file/6361">idb man page&nbsp;[TXT]</a>
</td>
</tr>
<tr>
<td><img height="3" src="http://software.intel.com/file/6408" width="15"></td>
<td class="bodycopy">
<i>&nbsp;File Name:</i>&nbsp;idb.txt
<br><em>&nbsp;Date:</em> May 2006</td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td><img height="16" alt="icon" src="http://software.intel.com/file/6398" width="16" align="bottom" border="0"></td>
<td class="bodycopy">&nbsp;
<a href="http://software.intel.com/file/6282">Quick-Reference Guide to Optimization with Intel&reg; Compilers&nbsp;[PDF]</a>
</td>
</tr>
<tr>
<td><img height="3" src="http://software.intel.com/file/6408" width="15"></td>
<td class="bodycopy">
<i>&nbsp;File Name:</i> 222300_222300.pdf
<br><i>&nbsp;Size:</i>&nbsp;543 KB
<br><em>&nbsp;Date:</em> May 2006</td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td><img height="16" alt="icon" src="http://software.intel.com/file/6398" width="16" align="bottom" border="0"></td>
<td class="bodycopy">&nbsp;
<a href="http://software.intel.com/file/6389">FLEXlm* User's Guide&nbsp;[PDF]</a>
</td>
</tr>
<tr>
<td><img height="3" src="http://software.intel.com/file/6408" width="15"></td>
<td class="bodycopy">
<i>&nbsp;File Name:</i> licenseMgr4FLEXlm.pdf
<br><i>&nbsp;Size:</i>&nbsp;109 KB
<br><em>&nbsp;Document Number:</em> 251879-013US</td>
</tr>
</table>
</td></tr></table>
<table border="0" cellspacing="0" cellpadding="0">
<tr><td><img src="http://software.intel.com/file/6324" width="388" heigh t="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-mac-os-9x-manuals</link>
      <pubDate>Fri, 19 Sep 2008 00:00:00 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-fortran-compiler-for-mac-os-9x-manuals#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-fortran-compiler-for-mac-os-9x-manuals</guid>
      <category>Intel® Fortran Compiler for Mac OS X* Knowledge Base</category>
    </item>
    <item>
      <title>Intel® Fortran Compiler for Windows* - Limits on array sizes</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 maximum size of a Fortran array is primarily determined by the operating system. The method by which the array is allocated can also affect how large an array can be.</p>
<p>On IA-32-based systems running 32-bit versions of the Windows*, Mac* OS, or Linux* operating systems, the maximum array size is 2GB for all allocation methods. This is a theoretical maximum - in practice the limit is somewhat less.</p>On Intel&reg; 64 or IA-64-based systems running a 64-bit operating system, the maximum array size is limited by the size of the physical memory on the system plus any additional paging or swap space. The size of the physical memory plus swap space is an upper limit. In practice the limit is somewhat less.
<p><strong>Note:</strong> For the Intel&reg; 64 and IA-64 Linux* compiler versions, please read the description of the 
<strong>-mcmodel</strong> Linux compiler option in the Compiler Documentation, Compiler Options, for additional information on data size limitations.</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-windows-limits-on-array-sizes</link>
      <pubDate>Fri, 19 Sep 2008 00:00:00 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-fortran-compiler-for-windows-limits-on-array-sizes#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-fortran-compiler-for-windows-limits-on-array-sizes</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 Windows* - Underflows / overflows of intermediate results during complex division</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>To improve performance on IA-32 and Intel&reg; 64 platforms, the option -complex-limited-range, /Qcomplex-limited-range causes the Intel&reg; Fortran Compiler to implement the complex division a/b = (w+ix) / (y+iz) using the algorithm 1./(y**2+z**2)*(wy+xz+i(xy-wz)). This can lead to overflows or underflows when the values of the intermediate products such as y**2 or xz lie outside the allowed range for the declared precision, even if the final result would have been within the allowed range.</p>
<p>For example, the following program will generate an overflow to infinity, since the intermediate value of y**2 (see above) is (2.0E19)**2 = 4.0E+38, which is greater than the maximum allowed value of approximately 3.4E+38, even though the final result of (5.0E-20, 0.0) falls within the allowed range. Consequently, the final result of this calculation will be (0.0, 0.0).</p>
<blockquote>program test
<br>complex(4) a, b, c
<br>a = cmplx(1.0, 0.0)
<br>b = cmplx(2.0E+19, 0.0)
<br>c = a / b
<br>print *, c
<br>end</blockquote>
<p>If instead, b = cmplx(1.0E-23, 0.0), the product y**2 would underflow to zero, and the final result after dividing by zero is (+infinity, indefinite). (For values of the real part of b between approximately 1.0E-19 and 3.0E-23, the result of the underflow will be a denormalized number, rather than zero. This yields a final answer that is finite, but with loss of precision).</p>
<p>The approximate allowed ranges for normalized real numbers are?</p>
<blockquote>single precision 1.18E-38 to 3.40E+38
<br>double precision 2.23E-308 to 1.79E+308
<br>extended precision 3.37E-4932 to 1.18E+4932</blockquote>
<p>This issue of underflow and overflow of intermediate results does not occur with the default compiler settings. When using the complex-limited-range or fp-model fast=2 which impiles complex-limited-range, the programmer should ensure that the range of operands for complex division computations is limited so that underflow and overflow of intermediate results cannot occur. One way to accomplish this is to increase the declared precision if, for example, the magnitude of the denominator of a complex division may exceed the square root of the maximum allowed range. The above example would then become?</p>
<blockquote>program test
<br>complex(8) a, b, c
<br>a = cmplx(1.0, 0.0)
<br>b = cmplx(2.0D+19, 0.0)
<br>c = a / b
<br>print *, c
<br>end</blockquote>
<p>And would give the expected result.</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-windows-underflows-overflows-of-intermediate-results-during-complex-division</link>
      <pubDate>Fri, 19 Sep 2008 00:00:00 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-fortran-compiler-for-windows-underflows-overflows-of-intermediate-results-during-complex-division#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-fortran-compiler-for-windows-underflows-overflows-of-intermediate-results-during-complex-division</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 Windows* - Related Information</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>Often, references to Intel literature (with part numbers) are included in Intel&reg; Fortran Compiler for Windows* documentation. To find this documentation, use the 
<a href="http://www.intel.com/products">Intel&reg; Technical Documentation Center</a>.</p>
<p>Additional documentation can be found on the following web pages:</p>
<ul>
<li><a href="http://www.intel.com/cd/software/products/asmo-na/eng/219759.htm">Intel&reg; Fortran Compiler Home Page</a></li>
<li><a href="http://www.intel.com/software/college">Intel&reg; Software College</a></li>
<li><a href="http://software.intel.com/en-us/articles/resource-center">Intel&reg; Developer Services</a></li>
</ul>
</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-windows-related-information</link>
      <pubDate>Fri, 19 Sep 2008 00:00:00 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-fortran-compiler-for-windows-related-information#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-fortran-compiler-for-windows-related-information</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>Performance Tools for Software Developers - Bounds Expression Variables Must Be Declared Before Use</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>In the Fortran language, expressions used for array bound and character variable length declarations are called 
<em>specification expressions</em>. For example, consider the following source fragment:</p>
<blockquote>subroutine sub (a, n)
<br>real a(n+1)</blockquote>
<p>Here, n+1 is a specification expression that defines the bounds of the array a. In most cases, variables can be declared in any order, but there are special rules for specification expressions, one of which is that any variable in the expression must have its type and type parameters (kind, length) specified by a 
<strong>previous</strong> declaration or by the implicit typing rules in effect. For example, the following is not legal Fortran:</p>
<blockquote>subroutine sub (a, b)
<br>real a(b)
<br>integer b</blockquote>
<p>In this case, the implicit type of b is real, but a specification expression must be integer. It does not matter that variable b is later declared to be integer, this code is not legal Fortran. The correct order is:</p>
<blockquote>subroutine sub (a,b)
<br>integer b
<br>real a(b)</blockquote>
<p>The Intel® Fortran Compiler enforces this rule of the Fortran language standard and gives an error if it is violated</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/performance-tools-for-software-developers-bounds-expression-variables-must-be-declared-before-use</link>
      <pubDate>Fri, 19 Sep 2008 00:00:00 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/performance-tools-for-software-developers-bounds-expression-variables-must-be-declared-before-use#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/performance-tools-for-software-developers-bounds-expression-variables-must-be-declared-before-use</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>
  </channel></rss>