<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated on Sun, 22 Nov 2009 13:52:18 -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-c-compiler-for-mac-os-x-kb/type/tips-and-techniques/feed/" rel="self" type="application/rss+xml" />
    <title>Intel Software Network articles feed</title>
    <link>http://software.intel.com/en-us/articles/intel-c-compiler-for-mac-os-x-kb/tips-and-techniques/</link>
    <description></description>
    <language>en-us</language>
    <item>
      <title>Intel® C++ Compiler - Supported compiler versions</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>Interactive support via <a href="/en-us/articles/performance-tools-for-software-developers-intel-premier-support">Intel® Premier Support</a> or the Intel User Forums is provided for the two most recent compiler major releases. Older compiler versions are not supported.</p>
<p>If you have any questions about this policy, contact <a href="/en-us/articles/performance-tools-for-software-developers-intel-premier-support">Intel® Premier Support</a> or post on the appropriate Intel User Forum.</p>
<p>The following compiler versions are currently supported:</p>
<ul>
<li>Intel® C++ Compilers 11.x</li>
<li>Intel® C++ Compilers 10.x</li>
</ul>
<p>Compiler updates for each major version are always made to the most current minor version.  The following compiler versions are being actively updated:<br /><br />
<ul>
<li>Intel® C++ Compiler 11.1</li>
<li>Intel® C++ Compiler 10.1</li>
</ul>
</p>
<p><strong>Note:</strong> Version 8.x or 9.x is no longer supported.</p>
</td>
</tr>
</tbody>
</table> ]]></description>
      <link>http://software.intel.com/en-us/articles/intel-c-compiler-supported-compiler-versions</link>
      <pubDate>Thu, 12 Nov 2009 16:31:42 -0800</pubDate>
      <comments>http://software.intel.com/en-us/articles/intel-c-compiler-supported-compiler-versions#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/intel-c-compiler-supported-compiler-versions</guid>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® C++ Compiler for Mac OS X* Knowledge Base</category>
      <category>Intel® C++ Compiler for Windows* Knowledge Base</category>
    </item>
    <item>
      <title>Memory allocation results in segmentation violation</title>
      <description><![CDATA[ <br />
<div id="art_pre_template"><b>Problem : <br /></b><br />I observe that when I compiled the following test case using default flag, its working properly. When I disabled optimization using flag -O0, it working for array size 10000, but unfortunately its giving segmentation fault error for size 100000.<br /><br />$ cat mytest1.c<br />// mytest1.c<br /><br />#include &lt;sys/time.h&gt;<br />#include &lt;time.h&gt;<br />#include&lt;stdio.h&gt;<br /><br />#define SIZE 1024 // Size = 1G<br />int main(int argc, char *argv[])<br />{<br />     float *a; //DB Init<br /><br />     long i,size=0,j;<br />     float sum=0;<br />     int k=0;<br />     int return_value;<br /><br /><br />     sscanf(argv[1], "%ld", &amp;size);<br />     printf("\n Size before Allocation = %ld\n",size);<br />     a=(float *) malloc (sizeof(float)* (size+128));<br /><br />     printf("Value of return from malloc = %d",return_value);<br /><br />     if (a == NULL){<br />         printf("\n\n ERROR: Memory Allocation not possible\n\n");<br />         exit(-1);<br />     }<br />     else<br />     {<br />         printf("Value of return pointer after memory allocation = %ld",a);<br />         printf("\n\n probing a[0]\n");<br />         a[0] = 0.;<br />         printf("probing a[%ld]\n", size-1);<br />         a[size-1] = 0.;<br />         printf("probing succeeded\n");<br />         return 0;<br />    }<br /><br />    for(i=0;i&lt; size; i++){<br />        sum+=a[i];<br />    }<br />    printf("\n Addition Complete, # of Element= %ld\n", size);<br />    free((void *)a);<br />    return 0;<br />}<br /><br /><br />$ icc -O0 mytest1.c <br />$ ./a.out 100000<br /><br />Size before Allocation = 100000<br />Value of return pointer after memory allocation = -1788305392<br /><br />probing a[0]<br />Segmentation fault<br /><br />$ icc mytest1.c <br />$ ./a.out 100000<br /><br />Size before Allocation = 100000<br />Value of return pointer after memory allocation = 182895288336<br /><br />probing a[0]<br />probing a[99999]<br />probing succeeded<br /><br /><br /><b>Environment : </b><br /><br />Intel C++ compiler, Linux x86_64<br /><br /><b>Root Cause : </b><br /><br />Implicitly declared malloc() returns improper address pointer and the application crashes. The compiler must know the function signature to handle it properly. <br /><br /><b>Resolution : </b><br /><br />Implicitly declared malloc() returns improper address pointer. The malloc() declaration in stdlib.h is as given below:<br /><br />void * malloc ( size_t size );<br /><br />The compiler must know the function signature to handle it properly. If we do not provide declaration to compiler, the compiler assumes that the value returned by the function is integer. This is called implicit declaration. <br /><br />The implicit declaration will force void pointer returned from malloc() to integer, the integer is converted again to float pointer. These conversions results in improper value for returned memory address and the application crashes.<br /><br /></div> ]]></description>
      <link>http://software.intel.com/en-us/articles/memory-allocation-results-in-segmentation-violation</link>
      <pubDate>Thu, 27 Aug 2009 23:40:59 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/memory-allocation-results-in-segmentation-violation#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/memory-allocation-results-in-segmentation-violation</guid>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® C++ Compiler for Mac OS X* Knowledge Base</category>
    </item>
    <item>
      <title>Unresolved external symbol ___intel_sse2_strlen</title>
      <description><![CDATA[ <br />
<div id="art_pre_template"><b>Problem : </b><br />After I have upgraded the compiler from Intel C++ compiler 10.1 to 11.1.038, in the linking stage, we get the errors like this:<br /><br />unresolved external symbol ___intel_sse2_strlen<br /><br /><b>Environment : </b><br /><br />Intel C++ compiler, Linux and Windows<br /><br /><b>Root Cause : </b><br /><br />Proper libirc.lib is not included during linking.<br /><br /><b>Resolution : </b><br /><br />The symbol is defined in libirc.lib. <br /><br />On Linux you may try the following:<br /><br />$nm /opt/intel/Compiler/11.1/038/lib/intel64/libirc.a | grep strlen<br />U strlen<br />U strlen<br />faststrlen.o:<br />0000000000000000 T __intel_sse2_strlen<br />0000000000000030 T __intel_sse4_strlen<br /><br />The Intel compiler driver will automatically include this. If you are not using icc or icpc then please include above library in linker command. You may try adding the compiler option -# to see the library being searched, and whether it is the older version.<br /><br />On Windows you may try the following:<br />C:\Program Files\Intel\Compiler\11.1\038\lib\ia32\&gt; dumpbin /symbols libirc.lib|find /I "strlen"<br /><br />faststrlen.c<br />005 00000000 SECT1 notype () External | ___intel_sse2_strlen<br />008 00000000 SECT2 notype () External | ___intel_sse4_strlen<br />027 00000000 UNDEF notype () External | _strlen<br />007 00000000 UNDEF notype () External | _strlen<br />017 00000000 UNDEF notype () External | _strlen<br /><br />In Visual Studio IDE, you may try the following to check where the "libirc.lib" is found and to make sure if it is the same version as the compiler version.<br /><br /><br />1. Select "Release" config<br />2. Open the project propety window, select "Link -&gt; General"<br />2. Set "Show Progress" as "Displays Some Progress Messages (/VERBOSE:LIB)"<br />3. rebuild<br /><br /><br /><br /><br /><br /><br /></div> ]]></description>
      <link>http://software.intel.com/en-us/articles/unresolved-external-symbol-_intel_sse2_strlen</link>
      <pubDate>Wed, 26 Aug 2009 02:45:38 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/unresolved-external-symbol-_intel_sse2_strlen#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/unresolved-external-symbol-_intel_sse2_strlen</guid>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® C++ Compiler for Mac OS X* Knowledge Base</category>
      <category>Intel® C++ Compiler for Windows* Knowledge Base</category>
    </item>
    <item>
      <title>Numeric casting issue when  during vectorization </title>
      <description><![CDATA[ <br />
<div style="padding-left: 30px;" id="art_pre_template"><b>Reference Number : </b><br /><br />http://software.intel.com/en-us/forums/intel-c-compiler/topic/65372/<br /><br /><b>Version : </b><br />Intel compiler 11.0<br /><br /><b>Operating System : </b><br />Linux<br /><br /><b>Problem Description : </b><br /><br />The unsigned to double casting in the Intel C++ compiler to produces improper result when vectoring.<br /><br />The following test case produces wrong result. If we disable vectorization, there is no issue.<br /><br />$ cat f65372.cpp<br />//f65372.cpp<br /><br />// HW: Intel(R) Core(TM)2 Duo CPU E4600 @ 2.40GHz, 2G memory<br />// OS: Fedora 10, kernel 2.6.27.19-170.2.35.fc10.x86_64<br />// Compiler: icpc 11.0 081, all default compiler settings<br /><br />#include &lt;inttypes.h&gt;<br />#include &lt;cstdio&gt;<br /><br />int main()<br />{<br />    const double res=1.0/4294967296.0;<br />    double max=0.0;<br />    int nsiz=16; // smaller nsiz, like 12, would work<br />    uint32_t urand[nsiz];<br /><br />    for (int j=0; j &lt; nsiz; ++j)<br />        urand[j]=0xfffffff0U; // seems to work if MSB is 0<br /><br />    for (int j=0; j &lt; nsiz; ++j) {<br />        double err=urand[j]*res; // doesn't work<br />        //double err=(unsigned int)urand[j]*res; // doesn't work<br />         //double err=(unsigned long)urand[j]*res; // this works<br />        if (err &gt; max)<br />             max=err;<br /><br />    }<br />    printf("Max = %.12g\n",max);<br />}<br /><br />// Incorrect output: Max = 4294967296<br />// Correct output: Max = 0.999999996275<br /><br /><br /><br /><br />$ icc f65372.cpp<br />f65372.cpp(17): (col. 2) remark: LOOP WAS VECTORIZED.<br />f65372.cpp(20): (col. 2) remark: LOOP WAS VECTORIZED.<br />[maya@maya8 f65372]$ ./a.out<br />Max = 4294967296<br /><br /><br /><br />$ icc -no-vec f65372.cpp<br />[maya@maya8 f65372]$ ./a.out<br />Max = 0.999999996275<br /><br /><b>Resolution Status : </b><br /><br />The issue is fixed. The unsigned to double casting in the Intel C++ compiler 11.1 to produces correct result when vectoring. <br /><br />We can use compiler option –no-vec for the older version of the compiler.<br /><br /><br /><br /><i>[DISCLAIMER: The information on this web site is intended for hardware system manufacturers and software developers. Intel does not warrant the accuracy, completeness or utility of any information on this site. Intel may make changes to the information or the site at any time without notice. Intel makes no commitment to update the information at this site. ALL INFORMATION PROVIDED ON THIS WEBSITE IS PROVIDED "as is" without any express, implied, or statutory warranty of any kind including but not limited to warranties of merchantability, non-infringement of intellectual property, or fitness for any particular purpose. Independent companies manufacture the third-party products that are mentioned on this site. Intel is not responsible for the quality or performance of third-party products and makes no representation or warranty regarding such products. The third-party supplier remains solely responsible for the design, manufacture, sale and functionality of its products. Intel and the Intel logo are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. *Other names and brands may be claimed as the property of others.]</i></div> ]]></description>
      <link>http://software.intel.com/en-us/articles/numeric-casting-issue-when-during-vectorization</link>
      <pubDate>Tue, 25 Aug 2009 00:08:26 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/numeric-casting-issue-when-during-vectorization#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/numeric-casting-issue-when-during-vectorization</guid>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® C++ Compiler for Mac OS X* Knowledge Base</category>
    </item>
    <item>
      <title>The  default icc behavior favors speed over IEEE floating point compliance</title>
      <description><![CDATA[ <div id="art_pre_template"><b>Problem : </b><br /><br />Is my observation correct, that icc per default does not generate IEEE compliant single precision floating point code and that -mieee-fp is necessary to get it?<br /><br />In my view a compiler should per default be standards compliant and only deviate from standard behavior if told so explicitly by using a flag.<br /><br /><br /><b>Environment : </b><br /><br />Intel C++ compiler for Linux* or Mac OS* X<br /><br /><b>Resolution : </b><br /><br />Intel compiler uses /fp-model fast=1 as defaults. This optimization favors speed over standards compliance. You may use compiler option -mieee-fp to get compliant code.<br /><br /><br /></div> ]]></description>
      <link>http://software.intel.com/en-us/articles/the-default-icc-behavior-favors-speed-over-ieee-floating-point-compliance</link>
      <pubDate>Mon, 24 Aug 2009 04:13:41 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/the-default-icc-behavior-favors-speed-over-ieee-floating-point-compliance#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/the-default-icc-behavior-favors-speed-over-ieee-floating-point-compliance</guid>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® C++ Compiler for Mac OS X* Knowledge Base</category>
    </item>
    <item>
      <title>Excluding functions from code coverage report </title>
      <description><![CDATA[ <br />
<div id="art_pre_template"><b>Problem : <br /></b><br />I am using codecov Version 9.1 Build 20070512Z. I want to exclude certain function from my code coverage report. Could you explain this with an example?<br /><br /><b>Environment : </b><br /><br />Intel C++ compiler, codecov, Linux or Windows<br /><br /><b>Resolution : </b><br /><br />You may use code coverage option -onelinedsbl INFEASIBLE to exclude function from you’re your code coverage report. This is explained using an example below:<br /><br /><br />// tstcase.cpp<br />#include &lt;stdio.h&gt;<br /><br />void call_func2()<br />{ // INFEASIBLE<br />printf("hello 2\n");<br />}<br /><br />int main()<br />{<br />printf ("hello 1\n");<br />call_func2();<br />return 0;<br />}<br /><br />I have used Intel C++ compiler 11.1.035 for windows. I compiled and run using following commands<br /><br />c:\&gt;icl /Qprof-gen:srcpos tstcase.cpp<br />c:\&gt; testcase<br />c:\&gt; profmerge<br />c:\&gt; codecov -onelinedsbl INFEASIBLE<br /><br />The codecov reports coverage for only one function. <br /><br /><br />If I use command "codecov" without above option and view the report, I could see two function covered.<br /><br /><br /></div> ]]></description>
      <link>http://software.intel.com/en-us/articles/excluding-functions-from-code-coverage-report</link>
      <pubDate>Mon, 24 Aug 2009 02:58:00 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/excluding-functions-from-code-coverage-report#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/excluding-functions-from-code-coverage-report</guid>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® C++ Compiler for Mac OS X* Knowledge Base</category>
      <category>Intel® C++ Compiler for Windows* Knowledge Base</category>
    </item>
    <item>
      <title>Unable to read and write using C++ file stream </title>
      <description><![CDATA[ <br />
<div id="art_pre_template"><b>Problem : </b><br />For years in Fortran95, I've been reading and writing files into various directories of my choice, thus keeping our data files in an orderly fashion. However, now I am shocked to find that you can't do anything like that in C++. <br /><br />Please tell me if there is a way, and give me an example.<br /><br /><b>Environment : </b><br />Intel C++ compiler for Linux*<br /><br /><b>Resolution : </b><br /><br />This is not a compiler issue. You need to have suitable access rights to the file. You can take help from system administrator to get suitable access rights for the file. I am providing a sample test case that I tried at my end in FC11 box. It works without issue.<br /><br />
<pre name="code" class="cpp">// file_rw.cpp
//

#include &lt;fstream&gt;
#include &lt;iostream&gt;
using namespace std;

int main()
{
    char str[2000] ;
    fstream fs( "/testdir/prt1.txt", ios::in ) ;

    if(!fs) {
        cout &lt;&lt; "Cannot open input file.\n";
        return 1;
    }

    fstream ft( "/testdir/prt2.txt", ios::out | ios::in ) ;
    if(!ft) {
        cout &lt;&lt; "Cannot open output file.\n";
        return 1;
    }

    while ( !fs.eof() )
    {
        fs.getline(str, 2000 ) ;
        ft &lt;&lt; str &lt;&lt; endl;
    }
    fs.close () ;
    ft.close ();
    return 0;
}</pre>
</div> ]]></description>
      <link>http://software.intel.com/en-us/articles/unable-to-read-and-write-using-c-file-stream</link>
      <pubDate>Sun, 23 Aug 2009 23:36:07 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/unable-to-read-and-write-using-c-file-stream#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/unable-to-read-and-write-using-c-file-stream</guid>
      <category>Intel® Parallel Composer</category>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® C++ Compiler for Mac OS X* Knowledge Base</category>
      <category>Intel® C++ Compiler for Windows* Knowledge Base</category>
      <category>Intel® Parallel Composer Knowledge Base</category>
    </item>
    <item>
      <title>How am I notified of updates for my registered products?</title>
      <description><![CDATA[ <p> </p>
<div><b>Problem : </b><br />How am I notified of updates for my registered products?<br /><br /><b>Resolution : </b><br />1) Login to the Intel® Registration Center by entering your Login ID and Password in the Registered Users Login section  of  the web page. You will see a list of all products you have subscribed;<br />2) Click on My account/Change notification preference on My products page below.<br /><br /><img src="http://software.intel.com/file/21592" alt="Notifacation+update+1.PNG" title="Notifacation+update+1.PNG" /><br /><br />3) You will be directed to the page below, check the box of <label for="ctl00_MainContentPlaceHolder_ckYesFilesNotification">Yes, I would like to receive Intel® Software Product update notifications.<br /><img src="http://software.intel.com/file/21593" alt="Notifacation+update+2.PNG" title="Notifacation+update+2.PNG" /><br /><br />4) Click Save Notification Prefences.<br /><br />You will then receive the registered product update notifications.</label></div> ]]></description>
      <link>http://software.intel.com/en-us/articles/how-notified-updates-for-products</link>
      <pubDate>Mon, 10 Aug 2009 00:40:04 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/how-notified-updates-for-products#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/how-notified-updates-for-products</guid>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® C++ Compiler for Mac OS X* Knowledge Base</category>
      <category>Intel® C++ Compiler for Windows* 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® Fortran Compiler for Mac OS X* 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® Software Development Products Registration Center Knowledge Base</category>
      <category>Intel® Visual Fortran Compiler for Windows* Knowledge Base</category>
      <category>Intel® VTune™ Performance Analyzer for Linux* Knowledge Base</category>
      <category>Intel® VTune™ Performance Analyzer for Windows* Knowledge Base</category>
    </item>
    <item>
      <title>Getting the product running with my new license</title>
      <description><![CDATA[ <p class="sectionHeading"><span class="sectionHeading">Before installing the product (no matter what type of license you have):</span></p>
<ol>
<li><a href="http://software.intel.com/en-us/articles/locate-my-serial-number/">Find your Serial Number (SN) </a></li>
<li><a href="http://software.intel.com/en-us/articles/register-products-serial-number/">Register the SN</a> </li>
<li>Download the product from the <a href="https://registrationcenter.intel.com/RegCenter/Register.aspx">Intel Registration and Download center</a> </li>
</ol>
<p>Then the next steps are different based on your license type.</p>
<p><strong class="sectionHeading">If you have a counted license, you have to do following:</strong></p>
I. Set up the license server <br /><ol>
<li><a href="http://software.intel.com/en-us/articles/license-manager-for-flexlm-users-guide/">Read the Intel License Manager for FLEXlm* User's Guide</a> </li>
<li>Find the right system for the license server</li>
<li><a href="http://software.intel.com/en-us/articles/performance-tools-for-software-developers-intel-flexlm-license-servers">Download the correct FLEXlm server for license servery system</a></li>
<li>Install the FLEXlm server: 
<ul>
<li>after installation, the license server should start running automatically</li>
<li>As for how to manually start or stop the FLEXlm license server, please refer to the FLEXlm user's guide </li>
</ul>
</li>
</ol>II. Install the product on the client systems <br /><ol>
<li><a href="http://software.intel.com/en-us/articles/licensing-setting-up-the-client-floating-license/">Set up the client license</a> </li>
<li>On Windows, just run the downloaded product package program. It will automatically extract the package and start the installation. </li>
<br />&gt;&gt; w_cproX_11.1.XXX.exe
<li>On Linux* or Mac OS* X, use following commands to install: </li>
<br />$ tar -xzvf l_cproX_11.1.XXX.tgz<br />$ ./install.sh </ol>
<p><strong class="sectionHeading">If you have a single user license, just follow the simple steps below:</strong></p>
<ol>
<li>The easies way to install is to use your SN. You can find the SN in the email when you purchase the product. See <a href="http://software.intel.com/en-us/articles/find-my-serial-number/">this KB on where to find your SN</a>.</li>
<li>To use the license file to install 
<ul>
<li>Save the license file sent to you by email to a directory [lic-dir]\mylic_file.lic </li>
On Windows, we use [common files]\intel\licenses folder as the default license folder<br />On Linux or Mac OS X, we use /opt/intel/licenses directory as the default license directory<br /><br />
<li>Set up an environment variable to this file: </li>
<br />On Windows, use <br />&gt;&gt; set INTEL_LICENSE_FILE=[lic-dir]\mylic_file.lic<br /><br />On Linux or Mac OS, use <br />$ export INTEL_LICENSE_FILE=[lic-dir]\mylic_file.lic<br />
</ul>
</li>
<li>Install the product</li>
<br />On Windows, run the downloaded product package program like below. Use either the license file or SN to install. <br />&gt;&gt; w_cproX_11.1.XXX.exe<br /><br />On Linux or Mac OX X, use following commands: <br />$ tar -xzvf l_cproX_11.1.XXX.tgz<br />$ ./install.sh <br /></ol>
<p><strong class="sectionHeading"><br />References and useful KB articles:</strong></p>
<ol>
<li><a href="http://software.intel.com/en-us/articles/intel-license-manager-for-flexlm-kb/all/1/">Intel® License Manager for FLEXlm* Knowledge Base</a></li>
<li><a href="http://software.intel.com/en-us/articles/how-do-i-combine-multiple-license-files/">How do I Combine Multiple License files?</a></li>
<li><a href="http://software.intel.com/en-us/articles/redundancy-server-notes/">Redundancy server notes - Floating/Nodelocked license </a></li>
<li><a href="http://software.intel.com/en-us/articles/flexlm-installed-OS/">Should Intel license manager for FLEXlm be installed on the same OS machine as that the license is limited to?</a></li>
<li><a href="http://software.intel.com/en-us/articles/how-do-i-upgrade-from-an-evaluation-to-a-full-commercial-version-single-user-node-locked-or-counted/">How do I upgrade from an evaluation to a full commercial version (single-user or floating)?</a></li>
<li><a href="http://software.intel.com/en-us/articles/change--serverhost-data-node-locked-or-floating-license/">How do I change the Server/Host data I provided for my node locked or floating license?</a></li>
<li><a href="http://software.intel.com/en-us/articles/install-product-without-internet-access/">How can I install my product without internet access?</a></li>
<li><a href="http://software.intel.com/en-us/articles/installing-license-server-on-vista/">Installing license server on Vista or Windows Server 2008</a></li>
<li><a href="http://software.intel.com/en-us/articles/product-download/">Where can I download the latest version of my product?</a></li>
<li><a href="http://software.intel.com/en-us/articles/products-and-versions-my-license-supports/">How can I determine which products and versions my license supports?</a></li>
<li><a href="http://software.intel.com/en-us/articles/evaluation-software-product-serial-number-to-activate/">Installing the eval product</a></li>
</ol> ]]></description>
      <link>http://software.intel.com/en-us/articles/getting-the-product-running-with-my-new-license</link>
      <pubDate>Tue, 04 Aug 2009 11:48:50 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/getting-the-product-running-with-my-new-license#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/getting-the-product-running-with-my-new-license</guid>
      <category>ISN General</category>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® C++ Compiler for Mac OS X* Knowledge Base</category>
      <category>Intel® C++ Compiler for Windows* Knowledge Base</category>
      <category>Intel® License Manager for FLEXlm* Knowledge Base</category>
      <category>Intel® Parallel Composer Knowledge Base</category>
    </item>
    <item>
      <title>Performance Tools for Software Developers - Auto parallelization and  /Qpar-threshold</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>The auto-parallelization feature of the Intel C++ Compiler automatically translates serial portions of the input program into semantically equivalent multithreaded code. Automatic parallelization determines the loops that are good work sharing candidates, performs the dataflow analysis to verify correct parallel execution, and partitions the data for threaded code generation as is needed in programming with OpenMP directives. The OpenMP and Auto-parallelization applications provide the performance gains from shared memory on multiprocessor systems, IA-32, Intel 64 and Itanium processors.</p>
<p>The following table lists the options that enable Auto-parallelization:</p>
<blockquote><b>/Qparallel:</b><br />Enables the auto-parallelizer to generate multithreaded code for loops that can be safely executed in parallel. <br /><br /><b>/Qpar-threshold:n</b><br />This option sets a threshold for the auto-parallelization of loops based on the probability of profitable execution of the loop in parallel. To use this option, you must also specify -parallel (Linux and Mac OS X) or /Qparallel (Windows). The default is /Qpar-threshold:100.</blockquote>
<p>This option is useful for loops whose computation work volume cannot be determined at compile-time. The threshold is usually relevant when the loop trip count is unknown at compile-time.</p>
<p>The compiler applies a heuristic that tries to balance the overhead of creating multiple threads versus the amount of work available to be shared amongst the threads.</p>
<p>The n is an integer whose value is the threshold for the auto-parallelization of loops. Possible values are 0 through 100. If <i>n</i> is 0, loops get auto-parallelized always, regardless of computation work volume. If <i>n</i> is 100, loops get auto-parallelized when performance gains are predicted based on the compiler analysis data. Loops get auto-parallelized only if profitable parallel execution is almost certain. The intermediate 1 to 99 values represent the percentage probability for profitable speed-up. For example, <i>n</i>=50 directs the compiler to parallelize only if there is a 50% probability of the code speeding up if executed in parallel.</p>
<p>Also, to be "100%" sure that a loop will benefit from parallelization, the compiler needs to know the iteration count at compile time. For a "99%" or lower threshold, knowing the iteration count at compile time is not a requirement.</p>
<p>This leads to a big difference in the number of loops parallelized at 99% compared to 100%. For many apps, 99% is a better setting, but for some apps with a lot of short loops, 99% will slow them down.</p>
<p>The following example, int_sin.c, does not auto parallelize when we use /Qpar-threshold:100 using command line below :</p>
<blockquote>C: &gt;icl -c /Qparallel /Qpar-report3 /Qpar-threshold:100 int_sin.cquote&gt;
<p>If we use /Qpar-threshold:99 then it is parallelized.</p>
<p><b>Example:</b></p>
<p class="whs23" style="MARGIN: auto 0in 0pt"><b style="mso-bidi-font-weight: normal"></b></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">// int_sin.c</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">// Intel C++ compiler sample program</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"> </p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">#include</span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: maroon">&lt;stdio.h&gt;</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">#include</span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: maroon">&lt;stdlib.h&gt;</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">#include</span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: maroon">&lt;time.h&gt;</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">#include</span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: maroon">&lt;mathimf.h&gt;</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"> </p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">// Function to be integrated</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">// Define and prototype it here</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">// | sin(x) |</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">#define</span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">INTEG_FUNC(x) fabs(sin(x))</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"> </p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">// Prototype timing function</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">double</span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">dclock( <span style="COLOR: blue">void</span>);</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"> </p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">int</span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">main( <span style="COLOR: blue">void</span>)</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">{</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// Loop counters and number of interior points</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: blue">unsigned</span><span style="COLOR: blue">int</span> i, j, N;</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// Stepsize, independent variable x, and accumulated sum</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: blue">double</span> step, x_i, sum;</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// Timing variables for evaluation </span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: blue">double</span> start, finish, duration, clock_t;</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// Start integral from</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: blue">double</span> interval_begin = 0.0;</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-ali gn: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// Complete integral at</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: blue">double</span> interval_end = 2.0 * 3.141592653589793238;</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"> </p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// Start timing for the entire application</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">start = clock();</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"> </p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">printf( <span style="COLOR: maroon">" "</span>);</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">printf( <span style="COLOR: maroon">" Number of | Computed Integral | "</span>);</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">printf( <span style="COLOR: maroon">" Interior Points | | "</span>);</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: blue">for</span> (j=2;j&lt;10;j++)</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">{</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">printf( <span style="COLOR: maroon">"------------------------------------- "</span>);</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"> </p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// Compute the number of (internal rectangles + 1)</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">N = 1 &lt;&lt; j;</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"> </p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// Compute stepsize for N-1 internal rectangles</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">step = (interval_end - interval_begin) / N;</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"> </p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// Approx. 1/2 area in first rectangle: f(x0) * [step/2]</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">sum = INTEG_FUNC(interval_begin) * step / 2.0;</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"> </p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// Apply midpoint rule:</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// Given length = f(x), compute the area of the</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// rectangle of width step</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// Sum areas of internal rectangle: f(xi + step) * step</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"> </p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: blue">for</span> (i=1;i&lt;N;i++)</span></p>
<span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">{</span>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">x_i = i * step;</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">sum += INTEG_FUNC(x_i) * step;</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">}</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"> </p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"><span style="COLOR: green">// Approx. 1/2 area in last rectangle: f(xN) * [step/2]</span></span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">sum += INTEG_FUNC(interval_end) * step / 2.0;</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"> </p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes; mso-ansi-language: IT" lang="IT">printf( <span style="COLOR: maroon">" %10d | %14e | "</span>, N, sum);</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">}</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">finish = clock();</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">duration = (finish - start);</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">printf( <span style="COLOR: maroon">" "</span>);</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt;  FONT-FAMILY: 'Courier New'; mso-no-proof: yes">printf( <span style="COLOR: maroon">" Application Clocks = %10e "</span>, duration);</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes">printf( <span style="COLOR: maroon">" "</span>);</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"><span style="mso-no-proof: yes"><span style="font-size: small; font-family: Times New Roman;">}</span></span></p>
</blockquote>
</td>
</tr>
</tbody>
</table>
<table border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td><img src="http://software.intel.com/file/6324" height="5" width="388" /></td>
</tr>
<tr>
<td height="10"></td>
</tr>
</tbody>
</table> ]]></description>
      <link>http://software.intel.com/en-us/articles/performance-tools-for-software-developers-auto-parallelization-and-qpar-threshold</link>
      <pubDate>Mon, 13 Jul 2009 15:32:16 -0700</pubDate>
      <comments>http://software.intel.com/en-us/articles/performance-tools-for-software-developers-auto-parallelization-and-qpar-threshold#comments</comments>
      <guid isPermaLink="true">http://software.intel.com/en-us/articles/performance-tools-for-software-developers-auto-parallelization-and-qpar-threshold</guid>
      <category>Intel® C++ Compiler for Linux* Knowledge Base</category>
      <category>Intel® C++ Compiler for Mac OS X* Knowledge Base</category>
      <category>Intel® C++ Compiler for Windows* Knowledge Base</category>
      <category>Intel® Parallel Composer Knowledge Base</category>
    </item>
  </channel></rss>