<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated on Sun, 22 Nov 2009 22:40:57 -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-visual-fortran-compiler-for-windows-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-visual-fortran-compiler-for-windows-kb/technical-notes/</link>
    <description></description>
    <language>en-us</language>
    <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>Redistributable libraries for the Intel(R) C++ and Visual Fortran Compiler for Windows</title>
      <description><![CDATA[ <p><strong class="sectionHeading">Overview<br /></strong><br />This article contains links to the redistributable installation packages for the Intel Compiler Professional Editions for Windows. <br /><br />The redistributable packages are for the end users who use applications that are built with Intel Compilers. Please note that there is one redistributable package for every compiler update. Make sure you download and install the one recommended by the application vendor. <br /><br /><span class="sectionHeading">OS requirement for redistributable packages for Intel Compiler Professional Editions for Windows 11.1<br /></span><br />The supported OS are: Windows XP*, Vista*, Windows Server 2003*, Windows Server 2008*, Windows HPC Server 2008*.<br /><br /><span class="sectionHeading">Installation instructions<br /></span><br />The installation program of the redistributable package will guide you through the installation. You will need to accept the license and the installation will install all the libraries to the fixed directory. <br /><br />For the redistributable package of Intel C++ Professional Compiler for Windows, the installation directory is <br />[Common Files]\Intel\Shared Files\cpp <br /><br />For the redistributable package of the Intel Fortran Professional Compiler for Windows, the installation directory is <br />[Common Files]\Intel\Shared Files\Fortran<br /><br />The installation will add the above directory to your environment variable "path" as well.</p>
<p>If you wish to install the redistributable package "<strong>silently</strong>", so that no output is presented to the user, run the executable with the following options added to the command line like:<br />&gt;&gt; w_cproc_p_11.1.04x_redist_xxx.exe /S /V/qn<br /><br /><span class="sectionHeading">Links to the redistributable packages<br /></span><br />
<table border="1" cellpadding="0" cellspacing="0" style="width: 653px; height: 182px;">
<tbody>
<tr>
<td width="295" valign="top"><b>Intel C++ Compiler for Windows <br />11.1.048 (update 2 revised) </b><br /><br />
<p><a href="http://registrationcenter.intel.com/irc_nas/1605/w_cproc_p_11.1.048_redist_ia32.exe">• Redistributable library package for IA32</a><br /><a href="http://registrationcenter.intel.com/irc_nas/1605/w_cproc_p_11.1.048_redist_intel64.exe">• Redistributable library package for Intel 64</a><br /><a href="http://registrationcenter.intel.com/irc_nas/1605/w_cproc_p_11.1.048_redist_ia64.exe">• Redistributable library package for IA-64</a></p>
</td>
<td width="295" valign="top"><b>Intel Visual Fortran Compiler for Windows<br />11.1.048 (update 3)</b><br /><br />
<p><a href="http://registrationcenter.intel.com/irc_nas/1604/w_cprof_p_11.1.048_redist_ia32.exe">• Redistributable library package for IA32</a><br /><a href="http://registrationcenter.intel.com/irc_nas/1604/w_cprof_p_11.1.048_redist_intel64.exe">• Redistributable library package for Intel 64</a><br /><a href="http://registrationcenter.intel.com/irc_nas/1604/w_cprof_p_11.1.048_redist_ia64.exe">• Redistributable library package for IA-64</a></p>
</td>
</tr>
<tr>
<td width="295" valign="top"><b>Intel C++ Compiler for Windows <br />11.1.051 (update 3) </b><br /><br />
<p><a href="http://registrationcenter.intel.com/irc_nas/1630/w_cproc_p_11.1.051_redist_ia32.exe">• Redistributable library package for IA32</a><br /><a href="http://registrationcenter.intel.com/irc_nas/1630/w_cproc_p_11.1.051_redist_intel64.exe">• Redistributable library package for Intel 64</a><br /><a href="http://registrationcenter.intel.com/irc_nas/1630/w_cproc_p_11.1.051_redist_ia64.exe">• Redistributable library package for IA-64</a></p>
</td>
<td width="295" valign="top"><b>Intel Visual Fortran Compiler for Windows<br />11.1.051 (update 3)</b><br /><br />
<p><a href="http://registrationcenter.intel.com/irc_nas/1627/w_cprof_p_11.1.051_redist_ia32.exe">• Redistributable library package for IA32</a><br /><a href="http://registrationcenter.intel.com/irc_nas/1627/w_cprof_p_11.1.051_redist_intel64.exe">• Redistributable library package for Intel 64</a><br /><a href="http://registrationcenter.intel.com/irc_nas/1627/w_cprof_p_11.1.051_redist_ia64.exe">• Redistributable library package for IA-64</a></p>
</td>
</tr>
</tbody>
</table>
<br /><br /><span class="sectionHeading">References<br /></span><br /><a href="http://software.intel.com/en-us/articles/redistribution-of-application-binaries-built-for-microsoft-windows/">Redistribution of Application Binaries Built for Microsoft* Windows</a></p> ]]></description>
      <link>http://software.intel.com/en-us/articles/redistributable-libraries-of-the-intel-c-and-fortran-compiler-for-windows</link>
      <pubDate>Wed, 14 Oct 2009 10:13:19 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/redistributable-libraries-of-the-intel-c-and-fortran-compiler-for-windows#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/redistributable-libraries-of-the-intel-c-and-fortran-compiler-for-windows</guid>
      <category>Intel® C++ Compiler for Windows* Knowledge Base</category>
      <category>Intel® Visual Fortran Compiler for Windows* Knowledge Base</category>
    </item>
    <item>
      <title>Parallel Debugger Extension Exceptions:  0xa1a01db1, 0xa1a01db2</title>
      <description><![CDATA[ <br />
<div id="art_pre_template"><b>Problem : <br /></b>Running Openmp code under the VS 2005 debugger displays the following unexplained exceptions:<br />     First-chance exception at 0x7c812afb in Parallel_bug.exe: 0xA1A01DB1: 0xa1a01db1.<br />     First-chance exception at 0x7c812afb in Parallel_bug.exe: 0xA1A01DB2: 0xa1a01db2.<br /><br /><br /><br /><b>Environment : </b><br />Compiler Professional Edition 11.1 (Fortran), Microsoft Visual Studio 2005, IA-32 or Intel 64.<br /><br /><b>Root Cause : </b><br />These exceptions are used to initiate communication between the run-time library and the parallel debugger add-in. In VS2008 (and later) they are handled silently, however, there is a known limitation with VS2005 that requires these exceptions to be enabled manually, otherwise, they are reported by the debugger. This information had been left out of the ifort 11.1 release notes, but should be included for 11.1 update 2. <br /><br /><b>Resolution : </b><br />Manually set up VS 2005 to break on these exceptions by going to Debug&gt;Exceptions...&gt;Win32 Exceptions and enabling Intel Parallel Extension Exceptions 0, 1 and 2. This will cause the exceptions to be handled silently<br /><br /></div> ]]></description>
      <link>http://software.intel.com/en-us/articles/parallel-debugger-extension-exceptions-0xa1a01db1-0xa1a01db2</link>
      <pubDate>Tue, 08 Sep 2009 10:39:53 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/parallel-debugger-extension-exceptions-0xa1a01db1-0xa1a01db2#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/parallel-debugger-extension-exceptions-0xa1a01db1-0xa1a01db2</guid>
      <category>Intel® Visual Fortran Compiler for Windows* Knowledge Base</category>
    </item>
    <item>
      <title>How to Compile for Intel® AVX</title>
      <description><![CDATA[ <div id="art_pre_template">Intel® AVX (Intel® Advanced Vector Extensions) is a 256 bit instruction set extension to Intel® SSE (Intel® Streaming SIMD Extensions) that was first announced in 2008. Further information about Intel AVX is available at <a href="http://software.intel.com/en-us/avx/">http://software.intel.com/en-us/avx/</a> .<br /><br />The Intel C/C++ and Fortran Compilers, version 11.1, support the building of applications for Intel AVX. On Windows*, use the command line switch /QxAVX. On Linux*, use –xavx. The switches /QaxAVX (Windows) and –axavx (Linux) may be used to build applications that will take advantage of AVX instructions on Intel systems that support these, but will use only SSE instructions on other systems.<br /><br />Both C/C++ and Fortran compilers support automatic vectorization of floating-point loops using AVX instructions. The C/C++ compiler also supports AVX-based intrinsics (via the header file immintrin.h) and inline assembly. Intel AVX allows the vectorization of a wider variety of floating point loops than Intel SSE, with a greater potential performance gain due to the greater width of the SIMD registers. The vectorizer is enabled automatically by the switches listed above. To see which loops have been vectorized, use the switch /Qvec-report1 (windows) or –vec-report1 (Linux).<br /><br />Pending availability of processors supporting Intel AVX, the Intel® Software Development Emulator (Intel® SDE) is available for testing programs built for Intel AVX. See <a href="http://software.intel.com/en-us/articles/intel-software-development-emulator/">http://software.intel.com/en-us/articles/intel-software-development-emulator/</a> .<br />Further general information about the Intel Compilers for C/C++ and Fortran is available at <a href="http://software.intel.com/en-us/intel-compilers/">http://software.intel.com/en-us/intel-compilers/</a> . Further information about compiler support for Intel AVX may be found in the Intel C++ Compiler User and Reference Guides, for example in the section 'Intrinsics for Advanced Vector Extensions', accessible online at <a href="http://software.intel.com/sites/products/documentation/hpc/compilerpro/en-us/cpp/win/compiler_c/index.htm">http://software.intel.com/sites/products/documentation/hpc/compilerpro/en-us/cpp/win/compiler_c/index.htm</a> .</div> ]]></description>
      <link>http://software.intel.com/en-us/articles/how-to-compile-for-intel-avx</link>
      <pubDate>Thu, 16 Jul 2009 16:34:04 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/how-to-compile-for-intel-avx#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/how-to-compile-for-intel-avx</guid>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® C++ Compiler for Windows* Knowledge Base</category>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
      <category>Intel® Visual Fortran Compiler for Windows* 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>Can I export a makefile from Visual Studio?</title>
      <description><![CDATA[ This capability was removed from Visual Studio starting with Visual Studio .NET 2003*.<br /><br />Discussion on the msdn.com and microsoft.com web sites indicate that this feature<br />will not be implemented in future versions of Visual Studio.<br /><br />You can create a .bat file or makefile based on the buildlog.html. A buildlog.html file is created after building a project. You can find the file under the $(output) directory. <br /> ]]></description>
      <link>http://software.intel.com/en-us/articles/can-i-export-a-makefile-from-visual-studio</link>
      <pubDate>Thu, 21 May 2009 17:39:02 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/can-i-export-a-makefile-from-visual-studio#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/can-i-export-a-makefile-from-visual-studio</guid>
      <category>Intel® C++ Compiler for Windows* Knowledge Base</category>
      <category>Intel® Parallel Composer Knowledge Base</category>
      <category>Intel® Visual Fortran Compiler for Windows* Knowledge Base</category>
    </item>
    <item>
      <title>How to debug a Windows* Fortran application from the command line</title>
      <description><![CDATA[ <p class="sectionHeading">Introduction</p>
<p>For Fortran applications built within Microsoft Visual Studio*, you can debug the program by setting a breakpoint at the first executable line and then pressing F5 (or clicking the GO button).  But if you built the application using command line tools, this method is not available.  This article describes how to begin debugging an application built from the command line.</p>
<p><strong>Note: </strong>This technique requires that a supported version of Microsoft Visual Studio is installed. It will not work if you are using Microsoft Visual C++ Express Edition* or the Windows Platform SDK to support the compiler environment.</p>
<p class="sectionHeading">Building the Application</p>
<p>Add the <strong>/debug</strong> option to the ifort command when compiling and linking.  For example:</p>
<blockquote>ifort /debug /Od hello.f90</blockquote>
<p>or</p>
<blockquote>ifort /c /debug /Od main.f90<br />ifort /c /debug /Od sub.f90<br />ifort /debug /exe:main.exe main.obj sub.obj</blockquote>
<p>This will create a .pdb (Program Database) file alongside the executable.  The .pdb file is required for debugging. The <strong>/Od</strong> option disables optimization to enhance debugging.</p>
<p class="sectionHeading">Start Debugging</p>
<p>In order to start the debugger, you must be in a command prompt environment which includes definitions for Microsoft Visual Studio.  This is the default for an Intel Fortran "Build Environment" session.</p>
<p>Type the command:</p>
<blockquote>devenv /debugexe hello.exe</blockquote>
<p>where <code>hello.exe</code> is replaced with the name of your executable. If the program requires command line arguments, they may follow the executable name on the command line.</p>
<p>Wait for Visual Studio to finish loading.</p>
<p>You must now set a breakpoint at the main program.  To do this, select <strong>Debug &gt; New Breakpoint &gt; Break at Function...</strong> or press <strong>CTRL-B</strong>.  You will see a dialog similar to the following:</p>
<p><img title="new-breakpoint.gif" src="http://software.intel.com/file/10789" alt="new-breakpoint.gif" /></p>
<p>If you have built an IA-32 architecture application, type into the Function box the name:</p>
<blockquote>_MAIN__</blockquote>
<p>Note that there is one underscore before MAIN and two underscores after.</p>
<p>If you have built an Intel® 64 architecture application, type into the Function box the name:</p>
<blockquote>MAIN__</blockquote>
<p>In this case there is no leading underscore and two trailing underscores.</p>
<p>Click <strong>OK</strong>.</p>
<p>Press <strong>F5</strong> or click the <strong>Start Debugging</strong> button.  The program will now begin executing but will break at the Fortran main program.  From there you may set additional breakpoints as desired.</p>
<p>If at the end of the session you close Visual Studio and allow it to save the new Visual Studio solution it created, you can debug again just by opening the solution (.sln file).  Your previously set breakpoints will be preserved.</p>
<p class="sectionHeading">Questions?</p>
<p>If you have comments or questions specifically relating to this article, use the Comments box below. For other questions, please visit our <a href="http://software.intel.com/en-us/forums/intel-visual-fortran-compiler-for-windows/">user forum</a>.</p> ]]></description>
      <link>http://software.intel.com/en-us/articles/debug-windows-fortran-application-from-command-line</link>
      <pubDate>Fri, 06 Feb 2009 12:42:35 -0800</pubDate>
      <comments>http://software.intel.com/en-us/articles/debug-windows-fortran-application-from-command-line#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/debug-windows-fortran-application-from-command-line</guid>
      <category>Intel® Visual Fortran Compiler for Windows* Knowledge Base</category>
    </item>
    <item>
      <title>Installing and using the IMSL* Libraries</title>
      <description><![CDATA[ <!--page break--> 
<hr />
<div class="sectionHeading">Introduction</div>
<p>This article explains how to install, configure and use the IMSL* Fortran Numerical Library, as provided with Intel® Visual Fortran Professional Edition with IMSL*, version 11. It is not applicable to versions of IMSL obtained from other sources.</p>
<p>This article supplements the on-disk documentation provided at Building Applications &gt; Using Libraries &gt; Using the IMSL* Mathematical and Statistics Libraries. Please refer to that text for more detail on using IMSL.</p>
<!--page break--> 
<hr />
<div class="sectionHeading">Installation</div>
<p>The IMSL* libraries are supplied on a second DVD in boxed products and as separate downloads from the <a href="https://registrationcenter.intel.com/regcenter/register.aspx">Intel Software Development Products Registration Center</a>. There are three installation files, one for each target architecture. The file names are of the form:</p>
<ul>
<li>w_cprofimsl_p_11.0.xxx_ia32.exe - for building applications that run on IA-32</li>
<li>w_cprofimsl_p_11.0.xxx_intel64.exe - for building applications that run in Intel® 64</li>
<li>w_cprofimsl_p_11.0.xxx_ia64.exe - for building applications that run on IA-64</li>
</ul>
<p>You must install the Intel Visual Fortran compiler before installing the IMSL libraries. If you will be developing applications to run on more than one architecture, we recommend that you install the IMSL package for your development computer's architecture last.</p>
<!--page break--> 
<hr />
<div class="sectionHeading">Configuring for Use from the Command Line</div>
<p>Intel Visual Fortran 11.0.061 and 11.0.066 does not automatically establish the IMSL environment when the command line Build Environment scripts are run. Until this is corrected in a future update, you will have to edit the compiler .bat files manually to also set the IMSL environment.</p>
<p>For the IA-32 architecture target, open the file<br /><br /> <code>C:\Program Files\Intel\Compiler\11.0\066\fortran\Bin\IA32\ifortvars_IA32.bat</code><br /> <br />in Notepad or another text editor. Add the following line at the end of the file:</p>
<code>IF EXIST "C:\Program Files\VNI\imsl\fnl600\IA32\bin\fnlsetup.bat" @call "C:\Program Files\VNI\imsl\fnl600\IA32\bin\fnlsetup.bat"</code>
<p> </p>
<p><b>Make sure that the added text is contained on one line only.</b></p>
<p>For the Intel 64 architecture target, the file to edit is</p>
<p><code>...\Intel64\ifortvars_intel64.bat</code><br />or <br /><code>...\IA32_Intel64\ifortvars_ia32_intel64.bat<br /></code></p>
<p>and the line to add is:</p>
<code>IF EXIST "C:\Program Files\VNI\imsl\fnl600\Intel64\bin\fnlsetup.bat" @call "C:\Program Files\VNI\imsl\fnl600\Intel64\bin\fnlsetup.bat"</code>
<p><br />For the IA-64 architecture target, the file to edit is</p>
<code>...\IA64\ifortvars_ia64.bat</code>
<p><br />and the line to add is:</p>
<p><code>IF EXIST "C:\Program Files\VNI\imsl\fnl600\IA64\bin\fnlsetup.bat" @call "C:\Program Files\VNI\imsl\fnl600\IA64\bin\fnlsetup.bat"</code></p>
<!--page break--> 
<hr />
<div class="sectionHeading">Configuring for Use from Microsoft Visual Studio*</div>
<p>It may be necessary to add the paths for the IMSL INCLUDE and library files to Visual Studio.</p>
<ul>
<li>Open Microsoft Visual Studio 2003, 2005 or 2008</li>
<li>Select Tools &gt; Options</li>
<li>Under Options, select Intel® Fortran &gt; Compilers</li>
<li>In Visual Studio 2005 or 2008 only, select the Target Platform for which you want to make changes. The default of Win32 is for the IA-32 architecture target.</li>
<li>Make sure that the desired compiler version is selected.</li>
<li>At the right of Libraries., click the "..." button.</li>
<li>Add to the end of the list, <br /> <code>C:\Program Files\VNI\imsl\fnl600\IA32\lib</code> (for IA-32 architecture target)<br /> <code>C:\Program Files\VNI\imsl\fnl600\Intel64\lib</code> (for Intel 64 architecture target or)<br /> <code>C:\Program Files\VNI\imsl\fnl600\IA64\lib</code> (for IA-64 architecture target) </li>
<li>Click OK.</li>
<li>At the right of Includes, click the "..." button.</li>
<li>Add to the end of the list,<br /> <code>C:\Program Files\VNI\imsl\fnl600\IA32\include\dll</code> (for IA-32 architecture target)<br /> <code>C:\Program Files\VNI\imsl\fnl600\Intel64\include\dll</code> ( for Intel 64 architecture target or)<br /> <code>C:\Program Files\VNI\imsl\fnl600\IA64\include\dll</code> for (IA-64 architecture targe) </li>
<li>Click OK </li>
<li>Click OK to save the changes.</li>
</ul>
<!--page break--> 
<hr />
<div class="sectionHeading">Building Applications</div>
<p>If you were using the IMSL libraries with Intel Visual Fortran 10.x, you may need to make a change to your source or build options to reflect the change in the default OpenMP* libraries used by the Intel Fortran compiler.</p>
<p>If you followed the recommendation of Visual Numerics* and enabled OpenMP processing for your application, you will probably not have to make changes.</p>
<p>If you were instructed to add to a source file the line:</p>
<code>!DEC$ OBJCOMMENT LIB:'libguide.lib'<br /></code>
<p><br />change this to:</p>
<code>!DEC$ OBJCOMMENT LIB:'libiomp5md.lib'<br /></code>
<p><br />If you added <code>libguide.lib</code> to your build options in other ways, replace it with <code>libiomp5md.lib</code>. You must <b>not</b> specify the /Qopenmp-libs:legacy option as this is incompatible with IMSL.</p>
<p>If you are building a new application, you will need to select one of the sets of IMSL libraries and add the necessary line(s), as described in the compiler documentation, in one of your Fortran source files. Most applications will use these:</p>
<code>INCLUDE 'link_fnl_static.h'<br />!DEC$ OBJCOMMENT LIB:'libiomp5md.lib'<br /><br /></code> <!--page break--> 
<hr />
<div class="sectionHeading">Common Problems</div>
<p><b>Problem:</b> When compiling, you receive an error similar to:</p>
<code>error #5102: Cannot open include file 'link_fnl_static.h' </code><br />or<br /> <code>error #7002: Error in opening the compiled module file. Check INCLUDE paths.<br /></code>
<p><b>Resolution:</b><br />Follow the steps in the sections above for configuring for use from the command line or from Microsoft Visual Studio.</p>
<p><b>Problem:</b> <br />When linking, you receive errors similar to:</p>
<code>imsls_err.lib(e1pos.obj) : error LNK2001: unresolved external symbol ___kmpc_threadprivate_cached<br /></code>
<p><b>Resolution:</b><br />Add the line:</p>
<code>!DEC$ OBJCOMMENT LIB:'libiomp5md.lib'<br /><br /></code>
<p>to one of your Fortran sources. An alternative is to enable OpenMP processing (/Qopenmp), but this may have unwanted side effects if you are not using OpenMP in your application.</p>
<!--page break--> 
<hr />
<div class="sectionHeading">Conclusion</div>
<p>If you have comments on this article, specifically, please add them below. If you need assistance using the product, please visit our <a href="http://software.intel.com/en-us/forums/intel-visual-fortran-compiler-for-windows/">User Forum</a> or see <a href="http://www.intel.com/support/performancetools/fortran/windows/">this support page</a> for further options.</p>
<!--page break--> 
<hr />
<p> </p> ]]></description>
      <link>http://software.intel.com/en-us/articles/installing-and-using-the-imsl-libraries</link>
      <pubDate>Wed, 04 Feb 2009 06:53:24 -0800</pubDate>
      <comments>http://software.intel.com/en-us/articles/installing-and-using-the-imsl-libraries#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/installing-and-using-the-imsl-libraries</guid>
      <category>Intel® Visual Fortran Compiler for Windows* Knowledge Base</category>
    </item>
    <item>
      <title>Configuring Visual Studio for Mixed-Language Applications</title>
      <description><![CDATA[ <span class="sectionHeading">Introduction</span>
<p> </p>
<p>If your application mixes Fortran with C or C++ and the main program is not in Fortran, you must configure Microsoft Visual Studio to search Fortran libraries.  This article describes the process. Visual Studio 2008 is used in the illustrations.  The process is similar for Visual Studio 2005 and Visual Studio.NET 2003, with the exception that Visual Studio .NET 2003 supports development for the "Win32" platform (IA-32 architecture) only.<br /><br />This article applies to Intel Visual Fortran 10.x and 11.x.</p>
<span class="sectionHeading">Configuration</span>
<p> </p>
<p>This configuration needs to be done one time only per install of Microsoft Visual Studio.</p>
<p>Open Microsoft Visual Studio.  Select Tools &gt; Options. In the left pane, expand Projects and Solutions and then click on VC++ Directories. (Visual Studio .NET 2003 uses "Projects" instead of "Projects and Solutions")</p>
<p><img title="VSDirectories.png" src="http://software.intel.com/file/8480" alt="Setting%20directory%20lists%20in%20Visual%20Fortran" /></p>
<p>Click on the New Line button (to the right of the "check mark" button) and enter the following new line if you are using Intel Visual Fortran 11.x:</p>
<p>$(IFORT_COMPILER11)lib\ia32</p>
<p>or the following new line if you are using Intel Visual Fortran 10.x:</p>
<p>$(IFORT_COMPILER10)\ia32\lib</p>
<p>Click OK.</p>
<p>If you are using Visual Studio 2005 or 2008 and will be developing for the Intel 64 or IA-64 architectures, repeat the above steps, using the Platform dropdown to select "x64" (Intel 64) or "Itanium" (IA-64). When entering the path, use "intel64" or "ia64" instead of "ia32".</p>
<p class="sectionHeading">Additional Notes</p>
<p> </p>
<p>If you are using Visual Studio 2005, you must install <a href="http://www.microsoft.com/downloads/details.aspx?familyid=BB4A75AB-E2D4-4C96-B39D-37BAF6B5B1DC&amp;displaylang=en">Visual Studio 2005 Service Pack 1</a>, otherwise your Fortran project will not be found when linking the C/C++ project.</p>
<p>If you need help using Intel Visual Fortran, please visit our <a href="http://software.intel.com/en-us/forums/intel-visual-fortran-compiler-for-windows/">User Forum</a> an post a question there.  If you have a comment on this article, you can add one below.</p> ]]></description>
      <link>http://software.intel.com/en-us/articles/configuring-visual-studio-for-mixed-language-applications</link>
      <pubDate>Fri, 09 Jan 2009 17:04:28 -0800</pubDate>
      <comments>http://software.intel.com/en-us/articles/configuring-visual-studio-for-mixed-language-applications#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/configuring-visual-studio-for-mixed-language-applications</guid>
      <category>Intel® Visual Fortran Compiler for Windows* Knowledge Base</category>
    </item>
    <item>
      <title>Intel® Fortran Compiler - What are the recommended options to target a Pentium® 4 processor-based system?</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>With Intel's Pentium&reg; 4, Pentium&reg; M processors, and Pentium 4 processors with support for Streaming SIMD Extensions (SSE3) all supporting SSE and SSE2, what are the recommended options to target any Pentium 4 processor-based system?</p>
<p>To achieve the best performance on any Pentium 4 or Pentium M processor, the best single option setting is /QaxN (-axN on Linux*). However, users should verify whether there is a performance difference between using "N" versus "B" on the Pentium M processor, as there are slight differences in the optimizations performed. If it is required the application execute on any Intel&reg; processor, including the Pentium 4 processor with support for SSE3, specify /QaxNP (-axNP on Linux). This combination of cpu-dispatch compiler options generates potentially three code paths:</p>
<ul>
<li>one generic for all processors</li>
<li>one specifically targeted for the Pentium 4 processor, and</li>
<li>one targeted for Pentium 4 processors with support for SSE3</li>
</ul>
<p>The caveat with using multiple cpu-dispatched processor targets is that the application's code size could increase due to the multiple processor code paths generated. All applications are different and have different characteristics that affect performance. Therefore, it is best to employ a data-driven, experimental approach in trying the various options to determine which provide the best performance for your application.</p>
<p><strong>Operating System:</strong><br></p>
<table border="0" cellspacing="0" cellpadding="0"><tr><td class="xs">Windows* 98 SE, Windows* 2000, Windows* Me, Windows NT* 4.0, Windows NT* Terminal Server, Turbolinux*, Linux*, Windows* XP 64-Bit Edition, Windows* XP Professional, Red Hat* Linux 7.2, Red Hat* Linux 7.3, SUSE* Linux 7.3, SUSE* Linux 8.0, SUSE* Linux 8.1, Red Hat* Linux 8.0, Turbolinux* 8 Workstation, Turbolinux* 8 Server, Turbolinux* 7 Server, Turbolinux* 7 Workstation, Debian Linux, Caldera* Linux, Turbolinux* 6.5, SUSE* Linux 7.2, SUSE* Linux, Red Hat* Linux Advanced Server 2.x, Windows Server* 2003, Red Flag* Linux* Desktop 4.0, Windows* XP Media Center Edition, Red Hat* Linux 9.0, Red Hat* Enterprise Linux 3.0, SUSE* Linux* 8.2, Windows* 2000 Server, Windows* 2000 Advanced Server, Windows Server* 2003 Standard Edition</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" 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-what-are-the-recommended-options-to-target-a-pentium-4-processor-based-system</link>
      <pubDate>Fri, 19 Sep 2008 00:00:00 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-fortran-compiler-what-are-the-recommended-options-to-target-a-pentium-4-processor-based-system#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-fortran-compiler-what-are-the-recommended-options-to-target-a-pentium-4-processor-based-system</guid>
      <category>Intel® Fortran Compiler for Linux* Knowledge Base</category>
      <category>Intel® Visual Fortran Compiler for Windows* Knowledge Base</category>
    </item>
  </channel></rss>