On Tue, May 29, 2012 at 3:52 PM, Jed Brown <span dir="ltr"><<a href="mailto:jedbrown@mcs.anl.gov" target="_blank">jedbrown@mcs.anl.gov</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
The OpenMP flags do not definitively identify that OpenMP is used. In particular, IBM XL interprets Cray's option "-h omp" as being equivalent to "-soname omp", then silently ignores the Open MP pragmas. We can perhaps "fix" this instance by moving -qsmp up in the list, but we may eventually need to move it to compilerOptions.py.</blockquote>
<div><br></div><div>Move it up, and add it to the comment. And people think OpenMP is the easy way?</div><div><br></div><div> Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><div><font face="courier new, monospace"> def configureLibrary(self):</font></div><div><font face="courier new, monospace"> ''' Checks for -fopenmp compiler flag'''</font></div><div>
<font face="courier new, monospace"> ''' Needs to check if OpenMP actually exists and works '''</font></div><div><font face="courier new, monospace"> self.setCompilers.pushLanguage('C')</font></div>
<div><font face="courier new, monospace"> # </font></div><div><font face="courier new, monospace"> for flag in ["-fopenmp", # Gnu</font></div><div><font face="courier new, monospace"> "-h omp", # Cray</font></div>
<div><font face="courier new, monospace"> "-mp", # Portland Group</font></div><div><font face="courier new, monospace"> "-Qopenmp", # Intel windows</font></div><div>
<font face="courier new, monospace"> "-openmp", # Intel</font></div><div><font face="courier new, monospace"> " ", # Empty, if compiler automatically accepts openmp</font></div>
<div><font face="courier new, monospace"> "-xopenmp", # Sun</font></div><div><font face="courier new, monospace"> "+Oopenmp", # HP</font></div><div><font face="courier new, monospace"> "-qsmp", # IBM XL C/c++</font></div>
<div><font face="courier new, monospace"> "/openmp" # Microsoft Visual Studio</font></div><div><font face="courier new, monospace"> ]:</font></div><div><font face="courier new, monospace"> if self.setCompilers.checkCompilerFlag(flag):</font></div>
<div><font face="courier new, monospace"> ompflag = flag</font></div><div><font face="courier new, monospace"> break</font></div></div><div><br></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>
-- Norbert Wiener<br>