On Mon, Dec 3, 2012 at 6:58 PM, Roland Schulz <span dir="ltr">&lt;<a href="mailto:roland@utk.edu" target="_blank">roland@utk.edu</a>&gt;</span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
Hi,<div><br></div><div>I think both the error message when <span style="font-family:arial,sans-serif;font-size:12.800000190734863px">OMP_NUM_THREADS is set (especially for group kernels) and the error message if </span><font face="arial, sans-serif">rdtscp isn&#39;t supported (this is disabled by </font><span style="font-family:arial,sans-serif;font-size:12.800000190734863px">GMX_DISTRIBUTABLE_BUILD</span><span style="font-family:arial,sans-serif;font-size:12.800000190734863px"> ) </span><span style="font-family:arial,sans-serif">should be improved (anything is better than illegal instruction). So I would open a bug so we can track that. </span></div>
</blockquote><div><br></div>As I said in my previous mail, the former should not be a concern (but do let me know if you don&#39;t see the message on the stderr), the latter is IMO way too specific. Users will get illegal instruction errors relatively often as probably many are used to being able to run binaries across different machines, something that will often not work with 4.6. In general, if you want to be able to issue a warning before the user gets the illegal instruction, you need to compile the cpuid code without optimization and call it as the very first thing to check the capability of the CPU against what the binary was compiled with. Even this might not work with e.g. -march, but at least it will be useful in most cases and not only when rdtscp is not supported.<br>
<br>Cheers,<br>--<br>Szilárd<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div><span style="font-family:arial,sans-serif"><br></span></div><div><span style="font-family:arial,sans-serif">Roland</span></div><div class="gmail_extra"><br><br><div class="gmail_quote"><div class="im">On Mon, Dec 3, 2012 at 10:50 AM, Shirts, Michael (mrs5pt) <span dir="ltr">&lt;<a href="mailto:mrs5pt@eservices.virginia.edu" target="_blank">mrs5pt@eservices.virginia.edu</a>&gt;</span> wrote:<br>


</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class="im">So in the end, setting GMX_DISTRIBUTABLE_BUILD seems to have been the<br>

solution.  I only compiled with SSE2, so I don&#39;t think it was a<br>
GMX_CPU_ACCELERATION mismatch.<br>
<br>
To summarize, I cleaned everything out, configured with<br>
<br>
cmake ../gromacs -DGMX_DISTRIBUTABLE_BUILD=Yes -DGMX_GPU=No -DGMX_DOUBLE=Yes<br>
-DGMX_CPU_ACCELERATION=SSE2 -DGMX_INSTALL_PRE<br>
<br>
And ran with:<br>
<br>
export OMP_NUM_THREADS=1<br>
$BINPATH/mdrun_d -ntmpi 8 -deffnm $DATAPATH/eth.vrescale.50<br>
<br>
And everything seems to work OK now.  Possibly I had some issues from not<br>
having a clean configure?  Apologies for not being able to generate a more<br>
reproducible error log.<br>
<br>
Thanks all for suggestions and comments.<br>
</div><div><br><div class="im">
Best,<br>
~~~~~~~~~~~~<br>
Michael Shirts<br>
Assistant Professor<br>
Department of Chemical Engineering<br>
University of Virginia<br>
<a href="mailto:michael.shirts@virginia.edu" target="_blank">michael.shirts@virginia.edu</a><br>
<a href="tel:%28434%29-243-1821" value="+14342431821" target="_blank">(434)-243-1821</a><br>
<br>
<br>
</div></div>&gt; From: Roland Schulz &lt;<a href="mailto:roland@utk.edu" target="_blank">roland@utk.edu</a>&gt;<br>
&gt; Date: Sun, 2 Dec 2012 23:12:31 -0500<div><div class="h5"><br>
<div><div>&gt; To: &quot;<a href="mailto:michael.shirts@virginia.edu" target="_blank">michael.shirts@virginia.edu</a>&quot; &lt;<a href="mailto:michael.shirts@virginia.edu" target="_blank">michael.shirts@virginia.edu</a>&gt;, Discussion<br>



&gt; list for GROMACS development &lt;<a href="mailto:gmx-developers@gromacs.org" target="_blank">gmx-developers@gromacs.org</a>&gt;<br>
&gt; Subject: Re: [gmx-developers] Gromacs trying to use OpenMP instead of<br>
&gt; thread-mpi despite trying to convince it?<br>
&gt;<br>
&gt; On Sun, Dec 2, 2012 at 12:58 PM, Shirts, Michael (mrs5pt) &lt;<br>
&gt; <a href="mailto:mrs5pt@eservices.virginia.edu" target="_blank">mrs5pt@eservices.virginia.edu</a>&gt; wrote:<br>
&gt;<br>
&gt;&gt; So, more progress, but no simulations running yet.<br>
&gt;&gt;<br>
&gt;&gt; mdrun -nt 8 -ntmpi 8 gives the same error as before (I actually tried that<br>
&gt;&gt; before, and forgot to include it in my error report)<br>
&gt;&gt;<br>
&gt;&gt; mdrun -ntmpi 8 -ntomp 1 gives the error<br>
&gt;&gt; Fatal error:<br>
&gt;&gt; OMP_NUM_THREADS (8) and the number of threads requested on the command line<br>
&gt;&gt; (1) have different values<br>
&gt;&gt; For more information and tips for troubleshooting, please check the GROMACS<br>
&gt;&gt; website at <a href="http://www.gromacs.org/Documentation/Errors" target="_blank">http://www.gromacs.org/Documentation/Errors</a><br>
&gt;&gt;<br>
&gt;<br>
&gt; We probably should print a notice that OMP_NUM_THREADS is set. Otherwise<br>
&gt; this is really confusing if OMP_NUM_THREADS isn&#39;t set by the user but by<br>
&gt; the system.<br>
&gt;<br>
&gt;<br>
&gt;&gt; Fatal error:<br>
&gt;&gt; OMP_NUM_THREADS is invalid: &#39;0&#39;<br>
&gt;&gt;<br>
&gt;<br>
&gt; This is also for ntomp. Also there you wand to use 1 not 0 to disable<br>
&gt; OpenMP (1 because it is total number of threads and thus 1 means serial).<br>
&gt;<br>
&gt;&gt;<br>
&gt;&gt; /var/spool/PBS/mom_priv/jobs/<a href="http://2053253.lc5.itc.virginia.edu.SC" target="_blank">2053253.lc5.itc.virginia.edu.SC</a>: line 22:<br>
&gt;&gt; 12201<br>
&gt;&gt; Illegal instruction     /h3/n1/shirtsgroup/gromac<br>
&gt;&gt; s_46/install/bin/mdrun_d -ntomp 1 -ntmpi -8 -deffnm<br>
&gt;&gt; /bigtmp/mrs5pt/eth.vrescale.50<br>
&gt;&gt;<br>
&gt;<br>
&gt; I suppose the CPU on the compute node is different from the build host. You<br>
&gt; need to change GMX_CPU_ACCELERATION to the one correct for the compute<br>
&gt; node. It could also help to set GMX_DISTRIBUTABLE_BUILD (both are cmake<br>
&gt; options).<br>
&gt;<br>
&gt; Roland<br>
&gt;<br>
&gt;<br>
&gt;&gt;<br>
&gt;&gt; Best,<br>
&gt;&gt; ~~~~~~~~~~~~<br>
&gt;&gt; Michael Shirts<br>
&gt;&gt; Assistant Professor<br>
&gt;&gt; Department of Chemical Engineering<br>
&gt;&gt; University of Virginia<br>
&gt;&gt; <a href="mailto:michael.shirts@virginia.edu" target="_blank">michael.shirts@virginia.edu</a><br>
&gt;&gt; <a href="tel:%28434%29-243-1821" value="+14342431821" target="_blank">(434)-243-1821</a><br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;&gt; From: Berk Hess &lt;<a href="mailto:hess@kth.se" target="_blank">hess@kth.se</a>&gt;<br>
&gt;&gt;&gt; Date: Sun, 2 Dec 2012 09:34:11 +0100<br>
&gt;&gt;&gt; To: &quot;<a href="mailto:michael.shirts@virginia.edu" target="_blank">michael.shirts@virginia.edu</a>&quot; &lt;<a href="mailto:michael.shirts@virginia.edu" target="_blank">michael.shirts@virginia.edu</a>&gt;,<br>

&gt;&gt; Discussion<br>
&gt;&gt;&gt; list for GROMACS development &lt;<a href="mailto:gmx-developers@gromacs.org" target="_blank">gmx-developers@gromacs.org</a>&gt;<br>
&gt;&gt;&gt; Subject: Re: [gmx-developers] Gromacs trying to use OpenMP instead of<br>
&gt;&gt;&gt; thread-mpi despite trying to convince it?<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Hi,<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; You queuing system probably doesn&#39;t set OMP_NUM_THREADS then<br>
&gt;&gt;&gt; and I assume this machine has at least 16 (HT) cores.<br>
&gt;&gt;&gt; mdrun -ntmpi 8 -ntomp 1<br>
&gt;&gt;&gt; will do what you want, or:<br>
&gt;&gt;&gt; mdrun -nt 8 -ntmpi 8<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Cheers,<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Berk<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; On 12/02/2012 08:28 AM, Shirts, Michael (mrs5pt) wrote:<br>
&gt;&gt;&gt;&gt; Quick question:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Compiling the most recent code in release-4-6, I compile without OpenMP<br>
&gt;&gt;&gt;&gt; (because using group rather than verlet cutoffs), and using any of the<br>
&gt;&gt;&gt;&gt; below:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; mdrun_d -ntmpi 8 -deffnm ethrun<br>
&gt;&gt;&gt;&gt; or<br>
&gt;&gt;&gt;&gt; mdrun_d -nt 8 -deffnm ethrun<br>
&gt;&gt;&gt;&gt; or<br>
&gt;&gt;&gt;&gt; mdrun_d -deffnm ethrun<br>
&gt;&gt;&gt;&gt; or<br>
&gt;&gt;&gt;&gt; mdrun_d -ntomp 0 -deffnm ethrun<br>
&gt;&gt;&gt;&gt; or<br>
&gt;&gt;&gt;&gt; mdrun_d -ntomp 0 -ntmpi8 -deffnm ethrun<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; I get:<br>
&gt;&gt;&gt;&gt; Fatal error:<br>
&gt;&gt;&gt;&gt; OpenMP threads are requested, but Gromacs was compiled without OpenMP<br>
&gt;&gt;&gt;&gt; support<br>
&gt;&gt;&gt;&gt; For more information and tips for troubleshooting, please check the<br>
&gt;&gt; GROMACS<br>
&gt;&gt;&gt;&gt; website at <a href="http://www.gromacs.org/Documentation/Errors" target="_blank">http://www.gromacs.org/Documentation/Errors</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Even though I&#39;m presumably requesting thread-mpi.  Worked fine with -nt<br>
&gt;&gt;&gt;&gt; previously (before the new -nt options introduced a few months back).<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Any suggestions or something I&#39;m doing wrong?  Perhaps gromacs is<br>
&gt;&gt;&gt;&gt; interpreting the cluster environment as requesting OpenMP somehow?<br>
&gt;&gt; FWIW, the<br>
&gt;&gt;&gt;&gt; PBS script request line is &quot;#PBS -l select=1:mpiprocs=8:ncpus=8&quot;.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Apologies if I missed this answers somewhere out there already.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Thanks,<br>
&gt;&gt;&gt;&gt; ~~~~~~~~~~~~<br>
&gt;&gt;&gt;&gt; Michael Shirts<br>
&gt;&gt;&gt;&gt; Assistant Professor<br>
&gt;&gt;&gt;&gt; Department of Chemical Engineering<br>
&gt;&gt;&gt;&gt; University of Virginia<br>
&gt;&gt;&gt;&gt; <a href="mailto:michael.shirts@virginia.edu" target="_blank">michael.shirts@virginia.edu</a><br>
&gt;&gt;&gt;&gt; <a href="tel:%28434%29-243-1821" value="+14342431821" target="_blank">(434)-243-1821</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; --<br>
&gt;&gt; gmx-developers mailing list<br>
&gt;&gt; <a href="mailto:gmx-developers@gromacs.org" target="_blank">gmx-developers@gromacs.org</a><br>
&gt;&gt; <a href="http://lists.gromacs.org/mailman/listinfo/gmx-developers" target="_blank">http://lists.gromacs.org/mailman/listinfo/gmx-developers</a><br>
&gt;&gt; Please don&#39;t post (un)subscribe requests to the list. Use the<br>
&gt;&gt; www interface or send it to <a href="mailto:gmx-developers-request@gromacs.org" target="_blank">gmx-developers-request@gromacs.org</a>.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; ORNL/UT Center for Molecular Biophysics <a href="http://cmb.ornl.gov" target="_blank">cmb.ornl.gov</a><br>
&gt; <a href="tel:865-241-1537" value="+18652411537" target="_blank">865-241-1537</a>, ORNL PO BOX 2008 MS6309<br>
<br>
<br>
<br>
<br>
<br>
</div></div></div></div></blockquote></div><div><div class="h5"><br><br clear="all"><div><br></div>-- <br>ORNL/UT Center for Molecular Biophysics <a href="http://cmb.ornl.gov" target="_blank">cmb.ornl.gov</a><br>865-241-1537, ORNL PO BOX 2008 MS6309<br>

</div></div></div>
<br>--<br>
gmx-developers mailing list<br>
<a href="mailto:gmx-developers@gromacs.org">gmx-developers@gromacs.org</a><br>
<a href="http://lists.gromacs.org/mailman/listinfo/gmx-developers" target="_blank">http://lists.gromacs.org/mailman/listinfo/gmx-developers</a><br>
Please don&#39;t post (un)subscribe requests to the list. Use the<br>
www interface or send it to <a href="mailto:gmx-developers-request@gromacs.org">gmx-developers-request@gromacs.org</a>.<br></blockquote></div><br></div>