<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:"Lucida Console";
        panose-1:2 11 6 9 4 5 4 2 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
tt
        {mso-style-priority:99;
        font-family:"Courier New";}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.apple-converted-space
        {mso-style-name:apple-converted-space;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Jack,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">From
<a href="http://www.cmake.org/Wiki/CMake_Useful_Variables">http://www.cmake.org/Wiki/CMake_Useful_Variables</a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">“<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-bottom:1.2pt;line-height:14.3pt;background:white">
<b><span style="font-size:10.0pt;font-family:"Arial","sans-serif";color:black">CMAKE_C_COMPILER <o:p></o:p></span></b></p>
<p class="MsoNormal" style="mso-margin-top-alt:0in;margin-right:0in;margin-bottom:1.2pt;margin-left:.5in;line-height:14.3pt;background:white">
<span style="font-size:10.0pt;font-family:"Arial","sans-serif";color:black">the compiler used for C files. Normally it is detected and set during the CMake run, but you can override it at configuration time. <b>Note!</b> It can not be changed after the first
 cmake or ccmake run. Although the gui allows to enter an alternative, it will be ignored in the next 'configure' run. Use for example: <br>
</span><span style="font-size:10.0pt;font-family:"Courier New";color:black">CC=gcc-3.3 CXX=g++-3.3 cmake</span><span style="font-size:10.0pt;font-family:"Arial","sans-serif";color:black"><br>
to set the compiler. (You can also set CMAKE_C_COMPILER_INIT, before any PROJECT() or ENABLE_LANGUAGE() command.) Any other way (like writing </span><span style="font-size:10.0pt;font-family:"Courier New";color:black">make CC=gcc-3.3 CXX=g++-3.3</span><span style="font-size:10.0pt;font-family:"Arial","sans-serif";color:black">)
 will not work. When using distcc or similar tools, you need to write: <br>
</span><span style="font-size:10.0pt;font-family:"Courier New";color:black">CC="distcc gcc-3.3" CXX="distcc g++-3.3" cmake</span><span style="font-size:10.0pt;font-family:"Arial","sans-serif";color:black"><br>
However, this will empty all your CMAKE_..._FLAGS_... above.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">”<o:p></o:p></span></p>
<p class="MsoNormal"><a name="_MailEndCompose"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></a></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Note that “It can not be changed after the first cmake or ccmake run” .  This means it cannot be specified again *<b>even if it is the same compiler name</b>*.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">You should get this undesired message if you specify the compilers on a subsequent cmake run:</span><span style="font-size:10.0pt;font-family:"Lucida Console""><o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:"Lucida Console"">-- Configuring done<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:"Lucida Console"">You have changed variables that require your cache to be deleted.<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:"Lucida Console"">Configure will be re-run and you may have to reset some variables.<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:"Lucida Console"">The following variables have changed:<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:"Lucida Console"">CMAKE_C_COMPILER= clang<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:"Lucida Console"">CMAKE_CXX_COMPILER= clang++<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Your error message suggests that cmake set the compiler path to
</span>/Users/howarth/llvm-svn/openmp-3.6.0/runtime/build/clang <span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">
which I’m guessing does not exist!<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">So you should be able to do this without any rm –rf * command:<o:p></o:p></span></p>
<p class="MsoNormal">cd openmp-3.6.0/runtime<o:p></o:p></p>
<p class="MsoNormal">mkdir build<o:p></o:p></p>
<p class="MsoNormal">cd build<o:p></o:p></p>
<p class="MsoNormal">cmake -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -Dos=mac -Darch=32 ..<o:p></o:p></p>
<p class="MsoNormal">make -j 1<o:p></o:p></p>
<p class="MsoNormal">cmake -Darch=32e ..<o:p></o:p></p>
<p class="MsoNormal">make -j 1<o:p></o:p></p>
<p class="MsoNormal">make fat<o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">-- Johnny<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">From:</span></b><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""> openmp-dev-bounces@cs.uiuc.edu [mailto:openmp-dev-bounces@cs.uiuc.edu]
<b>On Behalf Of </b>Jack Howarth<br>
<b>Sent:</b> Thursday, August 7, 2014 11:40 AM<br>
<b>To:</b> Cownie, James H<br>
<b>Cc:</b> Michael Wong; Carlo Bertolli; openmp-dev@dcs-maillist2.engr.illinois.edu<br>
<b>Subject:</b> Re: [Openmp-dev] PPC64 patch from Intel's fourth cmake patch<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">Jamie,<o:p></o:p></p>
<div>
<p class="MsoNormal">     It seems that the latest commits for ppc64 seem to have regressed the fat build on darwin. After the commit of <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><a href="http://lists.cs.uiuc.edu/pipermail/openmp-commits/2014-August/000030.html">http://lists.cs.uiuc.edu/pipermail/openmp-commits/2014-August/000030.html</a><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">on x86_64-apple-darwin11, I could still build the fat libiomp5 using…<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">cd openmp-3.6.0/runtime<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">mkdir build<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">cd build<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">cmake -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -Dos=mac -Darch=32 ..<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">make -j 1<o:p></o:p></p>
</div>
<div>
<div>
<p class="MsoNormal">cmake -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -Dos=mac -Darch=32e ..<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal">make -j 1<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">make fat<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">However after the ppc64 changes went it, the build regressed such that I have to use 'rm -fr *' before the second call to cmake for -Darch=32e<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">otherwise, I get…<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<div>
<p class="MsoNormal">[  2%] Generating iomp_lib.h<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">[  5%] Generating ../exports/mac_32e/include_compat/iomp_lib.h<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">[  5%] Built target inc<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">[  8%] Generating kmp_i18n_id.inc<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">[ 11%] Generating kmp_i18n_default.inc<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">[ 13%] Generating omp.h<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">[ 13%] Built target needed-headers<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Scanning dependencies of target iomp5<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">[ 16%] Building C object CMakeFiles/iomp5.dir/src/kmp_ftn_cdecl.c.o<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">/bin/sh: /Users/howarth/llvm-svn/openmp-3.6.0/runtime/build/clang: No such file or directory<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">make[2]: *** [CMakeFiles/iomp5.dir/src/kmp_ftn_cdecl.c.o] Error 127<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">make[1]: *** [CMakeFiles/iomp5.dir/all] Error 2<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">make: *** [all] Error 2<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">on the second 'make' for -Darch=32e<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">         Jack<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Thu, Aug 7, 2014 at 6:24 AM, Cownie, James H <<a href="mailto:james.h.cownie@intel.com" target="_blank">james.h.cownie@intel.com</a>> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-GB" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D">Committed at Rev 215093.</span><span lang="EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-GB" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D">I’ll now also commit to the 3.5 branch.</span><span lang="EN-GB"><o:p></o:p></span></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-GB" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D"> </span><span lang="EN-GB"><o:p></o:p></span></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-GB" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D">-- Jim<br>
<br>
James Cownie <<a href="mailto:james.h.cownie@intel.com" target="_blank">james.h.cownie@intel.com</a>><br>
SSG/DPD/TCAR (Technical Computing, Analyzers and Runtimes)</span><span lang="EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-GB" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D">Tel:
<a href="tel:%2B44%20117%209071438" target="_blank">+44 117 9071438</a></span><span lang="EN-GB"><o:p></o:p></span></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-GB" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D"> </span><span lang="EN-GB"><o:p></o:p></span></p>
</div>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> Carlo Bertolli [mailto:<a href="mailto:cbertol@us.ibm.com" target="_blank">cbertol@us.ibm.com</a>]
</span><span lang="EN-GB"><o:p></o:p></span></p>
<div>
<p class="MsoNormal"><b><span lang="EN-GB">Sent:</span></b><span lang="EN-GB"> Wednesday, August 06, 2014 4:28 PM<br>
<b>To:</b> Cownie, James H<br>
<b>Cc:</b> C. Bergström; Michael Wong; <a href="mailto:openmp-dev@dcs-maillist2.engr.illinois.edu" target="_blank">
openmp-dev@dcs-maillist2.engr.illinois.edu</a>; Hal Finkel<o:p></o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><b><span lang="EN-GB">Subject:</span></b><span lang="EN-GB"> RE: [Openmp-dev] PPC64 patch from Intel's fourth cmake patch<o:p></o:p></span></p>
</div>
</div>
</div>
</div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-GB"> <o:p></o:p></span></p>
<p><span lang="EN-GB" style="font-size:10.0pt;font-family:"Arial","sans-serif"">Hi James,</span><span lang="EN-GB"><br>
<br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Arial","sans-serif"">Attached a second version of my patch addressing C. Bergström concerns (again, thanks for this).</span><span lang="EN-GB"><br>
<br>
<i>(See attached file: ppc64-second-patch-from-fourth-intel-cmake)</i><br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Arial","sans-serif"">There were issues that remained unsolved - here are my answers:</span><span lang="EN-GB"><br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Arial","sans-serif"">1. I removed the use of uname from everywhere. The user has to specify the value of the variable "arch" on the command line (e.g. ppc64), otherwise 32e is assumed.</span><span lang="EN-GB"><br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Arial","sans-serif"">2. The old cmake has a very complex way of setting the OpenMP version (3 variables are used). I removed all my attempts to make them homogeneous, and left it as it was before
 I worked on it.</span><span lang="EN-GB"><br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Arial","sans-serif"">3. I left the implementation of kmp_invoke_microtask as Hal Finkel did it because there is no time to implement a better version - incidentally, this will work for the foreseeable
 future.</span><span lang="EN-GB"><br>
<br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Arial","sans-serif"">Please, let me know of any comments and I'll quickly fix the thing and send a revised patch.</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Arial","sans-serif"">In the meantime, thanks for holding this while I was fixing my patch.</span><span lang="EN-GB"><br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Arial","sans-serif"">Cheers</span><span lang="EN-GB"><br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Arial","sans-serif"">-- Carlo</span><span lang="EN-GB"><br>
<br>
<img border="0" width="16" height="16" id="_x0000_i1025" src="cid:image001.gif@01CFB23F.B11968F0" alt="Inactive hide details for "Cownie, James H" ---08/06/2014 05:23:22 AM---Carlo, If you send a new patch soon, I'll commit it *be"></span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Arial","sans-serif";color:#424282">"Cownie,
 James H" ---08/06/2014 05:23:22 AM---Carlo, If you send a new patch soon, I'll commit it *before* I push to the 3.5 branch.</span><span lang="EN-GB"><br>
<br>
</span><span lang="EN-GB" style="font-size:7.5pt;font-family:"Arial","sans-serif";color:#5F5F5F">From:
</span><span lang="EN-GB" style="font-size:7.5pt;font-family:"Arial","sans-serif"">"Cownie, James H" <<a href="mailto:james.h.cownie@intel.com" target="_blank">james.h.cownie@intel.com</a>></span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:7.5pt;font-family:"Arial","sans-serif";color:#5F5F5F">To:
</span><span lang="EN-GB" style="font-size:7.5pt;font-family:"Arial","sans-serif"">Carlo Bertolli/Watson/IBM@IBMUS, C. Bergström <<a href="mailto:cbergstrom@pathscale.com" target="_blank">cbergstrom@pathscale.com</a>></span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:7.5pt;font-family:"Arial","sans-serif";color:#5F5F5F">Cc:
</span><span lang="EN-GB" style="font-size:7.5pt;font-family:"Arial","sans-serif"">"<a href="mailto:openmp-dev@dcs-maillist2.engr.illinois.edu" target="_blank">openmp-dev@dcs-maillist2.engr.illinois.edu</a>" <<a href="mailto:openmp-dev@dcs-maillist2.engr.illinois.edu" target="_blank">openmp-dev@dcs-maillist2.engr.illinois.edu</a>>,
 Michael Wong <<a href="mailto:michaelw@ca.ibm.com" target="_blank">michaelw@ca.ibm.com</a>></span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:7.5pt;font-family:"Arial","sans-serif";color:#5F5F5F">Date:
</span><span lang="EN-GB" style="font-size:7.5pt;font-family:"Arial","sans-serif"">08/06/2014 05:23 AM</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:7.5pt;font-family:"Arial","sans-serif";color:#5F5F5F">Subject:
</span><span lang="EN-GB" style="font-size:7.5pt;font-family:"Arial","sans-serif"">RE: [Openmp-dev] PPC64 patch from Intel's fourth cmake patch</span><span lang="EN-GB"><o:p></o:p></span></p>
<div>
<div class="MsoNormal"><span lang="EN-GB">
<hr size="2" width="100%" noshade="" style="color:#8091A5" align="left">
</span></div>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-GB"><br>
<br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D">Carlo,</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D"> </span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D">If you send a new patch soon, I’ll commit it *<b>before</b>* I push to the 3.5 branch.</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D"> </span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D">-- Jim<br>
<br>
James Cownie <<a href="mailto:james.h.cownie@intel.com" target="_blank">james.h.cownie@intel.com</a>><br>
SSG/DPD/TCAR (Technical Computing, Analyzers and Runtimes)</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D">Tel:
<a href="tel:%2B44%20117%209071438" target="_blank">+44 117 9071438</a></span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D"> </span><span lang="EN-GB"><br>
</span><b><span lang="EN-GB" style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span lang="EN-GB" style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> <a href="mailto:openmp-dev-bounces@cs.uiuc.edu" target="_blank">openmp-dev-bounces@cs.uiuc.edu</a>
 [<a href="mailto:openmp-dev-bounces@cs.uiuc.edu" target="_blank">mailto:openmp-dev-bounces@cs.uiuc.edu</a>]
<b>On Behalf Of </b>Carlo Bertolli<b><br>
Sent:</b> Tuesday, August 05, 2014 11:52 PM<b><br>
To:</b> C. Bergström<b><br>
Cc:</b> <a href="mailto:openmp-dev@dcs-maillist2.engr.illinois.edu" target="_blank">openmp-dev@dcs-maillist2.engr.illinois.edu</a>; Michael Wong<b><br>
Subject:</b> Re: [Openmp-dev] PPC64 patch from Intel's fourth cmake patch</span><span lang="EN-GB"><br>
  <o:p></o:p></span></p>
<p><span lang="EN-GB" style="font-size:10.0pt;font-family:"Arial","sans-serif"">Hi C. Bergstrom,</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Arial","sans-serif""><br>
Thanks *very much* for the review. Below, my detailed comments on this, interspersed with your comments:</span><span lang="EN-GB"><br>
<br>
<br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
"C. Bergström" <</span><span lang="EN-GB"><a href="mailto:cbergstrom@pathscale.com" target="_blank"><span style="font-size:10.0pt;font-family:"Courier New"">cbergstrom@pathscale.com</span></a></span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New"">>
 wrote on 08/05/2014 05:11:10 PM:<br>
<br>
> From: "C. Bergström" <</span><span lang="EN-GB"><a href="mailto:cbergstrom@pathscale.com" target="_blank"><span style="font-size:10.0pt;font-family:"Courier New"">cbergstrom@pathscale.com</span></a></span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New"">><br>
> To: Carlo Bertolli/Watson/IBM@IBMUS<br>
> Cc: </span><span lang="EN-GB"><a href="mailto:openmp-dev@dcs-maillist2.engr.illinois.edu" target="_blank"><span style="font-size:10.0pt;font-family:"Courier New"">openmp-dev@dcs-maillist2.engr.illinois.edu</span></a></span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New"">,
 Michael Wong <br>
> <</span><span lang="EN-GB"><a href="mailto:michaelw@ca.ibm.com" target="_blank"><span style="font-size:10.0pt;font-family:"Courier New"">michaelw@ca.ibm.com</span></a></span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New"">><br>
> Date: 08/05/2014 05:13 PM<br>
> Subject: Re: [Openmp-dev] PPC64 patch from Intel's fourth cmake patch<br>
> <br>
> On 08/ 6/14 01:26 AM, Carlo Bertolli wrote:<br>
> ><br>
> > Hi all,<br>
> ><br>
> > I managed to create a git patch on top of latest Intel's cmake patch <br>
> > from Jonathan Peyton.<br>
> ><br>
> > /(See attached file: ppc64-patch-from-fourth-intel-cmake)/<br>
> ><br>
> > This patch adds the ppc64 architecture and enables the current <br>
> > Makefile system, the old cmake system, and the new cmake system on <br>
> > that architecture.<br>
> > It completely replaces the previous patch I sent on the openmp-commits <br>
> > list.<br>
> ><br>
> ><br>
> > Please let me know of any comments.<br>
> ><br>
> Hi Carlo!<br>
> <br>
> Thanks a lot for sending this<br>
> <br>
> Here's my off the cuff review<br>
> ---------<br>
> using uname to detect the host/target was rejected before. Please use <br>
> the "cmake" way of detecting things.<br>
> +EXECUTE_PROCESS( COMMAND uname -m COMMAND tr -d '\n' OUTPUT_VARIABLE <br>
> DETECT_ARCH )<br>
> +EXECUTE_PROCESS( COMMAND uname -m COMMAND tr -d '\n' OUTPUT_VARIABLE ARCH )<br>
> </span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
OK. I did some investigation on this and have done it again just now but was not able to find a way of doing this natively in cmake.<br>
Actually, I found comments about how cmake does not support this natively (may be an old cmake version).<br>
Can you suggest how to do this? (a link to a web page with an example is fine too).</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
<br>
> <br>
> Please don't use !not when it can be avoided - It can be slightly <br>
> confusing at a glance<br>
> # Is this a work-around to something? Why not just test for ppc64 and <br>
> handle that condition?<br>
> if(NOT "${DETECT_ARCH}" STREQUAL "ppc64")</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
I agree this is just a stupid way of coding things - I will fix it.</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
> <br>
> why change the minimum cmake version?<br>
> +cmake_minimum_required(VERSION 3.0)</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
I got an annoying warning from cmake when running on one of the machines here - I added it to get rid to the warning, but I will delete this.</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
> <br>
> --------<br>
> We should find a correct solution instead of "ugly work-around" - I hope <br>
> Intel can chime in here<br>
> +#ugly workaround because these variables are not really set<br>
> // For PathScale on BGQ - we are only able to support OMP2.5 for now. <br>
> Advertising support all the way to 4.x would possibly lead to weird <br>
> things. This should be done with care</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
This is a quick fixup that I made to the old cmake to have it work again on the machine I was using. I can get rid of those and ask who runs cmake to set them up. Would that be fine by you?</span><span lang="EN-GB"><br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
> --------<br>
> I don't know if this is limited to linux only, but it isn't a correct <br>
> assumption for Solaris and possibly FreeBSD<br>
> -  set(CMAKE_SHARED_LINKER_FLAGS <br>
> "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/exports_so.txt")<br>
> +  set(CMAKE_SHARED_LINKER_FLAGS <br>
> "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/exports_so.txt -ldl")<br>
> </span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
I think this only triggered an error on ppc64 linux. x86_64 linux did not raise any issue. What is your suggestion? Should I guard it as "if linux && ppc64"?<br>
<br>
> --------<br>
> I think this sneaked in<br>
> -#define KMP_VERSION_BUILD    00000000<br>
> +//#define KMP_VERSION_BUILD    00000000<br>
></span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
Yep, it did!<br>
<br>
> --------<br>
> I don't have the time to review <a href="http://makefile.mk/perl" target="_blank">
makefile.mk/perl</a> module - someone else <br>
> should do that..<br>
> # Personally, I think it should be removed</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
runtime/src/<a href="http://makefile.mk" target="_blank">makefile.mk</a> is used by the current Makefile (not sure about cmakes). In general, I am happier if Makefile stays in its place.</span><span lang="EN-GB"><br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
> ----------<br>
> <br>
> // This looks really weird and I'd need more details before accepting it<br>
> // I also think we may want to limit this damage to very specifically <br>
> "clang" instead of just PPC64<br>
> // Please provide more details<br>
> +__kmp_invoke_microtask<br>
> </span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
About this: I am not aware of any compiler that will target PPC64 using IOMP, except CLANG (I am happy to be told I am wrong). CLANG does currently gather all arguments to the microtask into a struct of pointers. That is the reason for my comment. There is
 ongoing discussion at Intel, I think, about why this is/is not bad.</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
From PPC64 perspective, we are happy the way it is. This implementation is coming from Hal Finkel (I am cc-ing him) that actually implemented that function. I had some discussion with my colleagues here and, if eventually this implementation gets in the way
 of getting better performance, we shall be able to provide an assembly version of this.<br>
For this patch, we feel comfortable as it is.</span><span lang="EN-GB"><br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
> <br>
> How do you plan to test this?<br>
> Does it pass the testsuite which has been made available?<br>
> I believe ANL did some work on this (Jeff Hammond) - is any of his work <br>
> used in this?</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
Yes, it passes the testsuite with similar results as with gcc on x86_64. If you need them, I can provide detailed information.<br>
Once we have clarified the remaining details, I will provide a new patch.</span><span lang="EN-GB"><br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
Thanks again for your detailed review and apologies about my inexperience in llvm-related projects.</span><span lang="EN-GB"><br>
<br>
<br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
Cheers</span><span lang="EN-GB"><br>
</span><span lang="EN-GB" style="font-size:10.0pt;font-family:"Courier New""><br>
-- Carlo</span><span lang="EN-GB"><o:p></o:p></span></p>
<p><span lang="EN-GB">---------------------------------------------------------------------<br>
Intel Corporation (UK) Limited<br>
Registered No. 1134945 (England)<br>
Registered Office: Pipers Way, Swindon SN3 1RJ<br>
VAT No: 860 2173 47 <o:p></o:p></span></p>
<p><span lang="EN-GB">This e-mail and any attachments may contain confidential material for<br>
the sole use of the intended recipient(s). Any review or distribution<br>
by others is strictly prohibited. If you are not the intended<br>
recipient, please contact the sender and delete all copies. <o:p></o:p></span></p>
</div>
</div>
</div>
<div>
<div>
<p><span lang="EN-GB">---------------------------------------------------------------------<br>
Intel Corporation (UK) Limited<br>
Registered No. 1134945 (England)<br>
Registered Office: Pipers Way, Swindon SN3 1RJ<br>
VAT No: 860 2173 47<o:p></o:p></span></p>
<p><span lang="EN-GB">This e-mail and any attachments may contain confidential material for<br>
the sole use of the intended recipient(s). Any review or distribution<br>
by others is strictly prohibited. If you are not the intended<br>
recipient, please contact the sender and delete all copies.<o:p></o:p></span></p>
</div>
</div>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
_______________________________________________<br>
Openmp-dev mailing list<br>
<a href="mailto:Openmp-dev@dcs-maillist2.engr.illinois.edu">Openmp-dev@dcs-maillist2.engr.illinois.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/openmp-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/openmp-dev</a><o:p></o:p></p>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</body>
</html>