<div>Thank you, Szilárd.</div>
<div> </div>
<div>Do you know where (say, in a piece of code or some documentation) I can be sure about that?<br></div>
<div>Cheers,</div>
<div> </div>
<div>Pedro.<br></div>
<div class="gmail_quote">Em 17 de abril de 2012 15:43, Szilárd Páll <span dir="ltr">&lt;<a href="mailto:szilard.pall@cbr.su.se">szilard.pall@cbr.su.se</a>&gt;</span> escreveu:<br>
<blockquote style="BORDER-LEFT:#ccc 1px solid;MARGIN:0px 0px 0px 0.8ex;PADDING-LEFT:1ex" class="gmail_quote">2012/4/17 Pedro Alexandre de Araújo Gomes Lapido Loureiro &lt;<a href="mailto:palaplou@gmail.com">palaplou@gmail.com</a>&gt;:<br>

<div>
<div class="h5">&gt; Hi,<br>&gt;<br>&gt; I&#39;ve come across a discussion about the &quot;single X double precision&quot; issue in<br>&gt; a NAMD users list e-mail<br>&gt; (<a href="http://www.ks.uiuc.edu/Research/namd/mailing_list/namd-l/9166.html" target="_blank">http://www.ks.uiuc.edu/Research/namd/mailing_list/namd-l/9166.html</a>).<br>
&gt; I would like to know what do you think about these 3 specific points:<br>&gt;<br>&gt; 1) &quot;there are some places where single precision (FFT, force/energy<br>&gt; computation), where single precision can be applied, but in other<br>
&gt; places (summations) where even double precision may result in<br>&gt; artefacts, due to limited numerical accuracy for large enough<br>&gt; systems. there are some applications that show little sensitivity<br>&gt; to single/double precision issues (homogeneous bulk lennard-jones<br>
&gt; systems), but others are notoriously difficult (systems with<br>&gt; significant potential drops in one or two dimensions, e.g. metal<br>&gt; surface slabs or lipid bilayers) since you don&#39;t have that much<br>&gt; error cancellation anymore.&quot;<br>
&gt;<br>&gt; 2) &quot;if you store coordinates in single precision, you have to take<br>&gt; extra precautions for handling very large systems, since you<br>&gt; would store coordinates with different relative precision,<br>
&gt; depending on how close you are to the origin. e.g., with domain<br>&gt; decomposition, you can define per domain offsets, but that<br>&gt; would work only well in case of a large enough number of domains. &quot;<br>&gt;<br>
&gt; 3) &quot;the best way to study the impact of single vs. double would be<br>&gt; by running tests with the gromacs code. gromacs _can_ be compiled<br>&gt; in single or double precision. for a proper comparison, you&#39;ll have<br>
&gt; to turn off the assembly innerloops though, since they may use single<br>&gt; precision even in double precision mode.&quot;<br>&gt;<br>&gt; Specifically this last point startled me. In fact, is this true?<br><br></div>
</div>AFAIK no, the assembly (SSE intrinsic in 4.6) kernels have both single<br>and double versions. If double precision is requested that&#39;s always<br>respected in the code.<br><br>Additionally, single precision in GROMACS is in fact not *pure* single<br>
precision, in some parts of the code where needed double precision is<br>used (e.g. constraints). Therefore, technically what we call single<br>corresponds to what some MD packages call mixed precision.<br><br>--<br>Szilárd<br>
<br><br>&gt; Cheers,<br>&gt;<br>&gt; Pedro.<br>&gt;<br><span class="HOEnZb"><font color="#888888">&gt;<br>&gt; --<br>&gt; gmx-users mailing list    <a href="mailto:gmx-users@gromacs.org">gmx-users@gromacs.org</a><br>&gt; <a href="http://lists.gromacs.org/mailman/listinfo/gmx-users" target="_blank">http://lists.gromacs.org/mailman/listinfo/gmx-users</a><br>
&gt; Please search the archive at<br>&gt; <a href="http://www.gromacs.org/Support/Mailing_Lists/Search" target="_blank">http://www.gromacs.org/Support/Mailing_Lists/Search</a> before posting!<br>&gt; Please don&#39;t post (un)subscribe requests to the list. Use the<br>
&gt; www interface or send it to <a href="mailto:gmx-users-request@gromacs.org">gmx-users-request@gromacs.org</a>.<br>&gt; Can&#39;t post? Read <a href="http://www.gromacs.org/Support/Mailing_Lists" target="_blank">http://www.gromacs.org/Support/Mailing_Lists</a><br>
--<br>gmx-users mailing list    <a href="mailto:gmx-users@gromacs.org">gmx-users@gromacs.org</a><br><a href="http://lists.gromacs.org/mailman/listinfo/gmx-users" target="_blank">http://lists.gromacs.org/mailman/listinfo/gmx-users</a><br>
Please search the archive at <a href="http://www.gromacs.org/Support/Mailing_Lists/Search" target="_blank">http://www.gromacs.org/Support/Mailing_Lists/Search</a> before posting!<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-users-request@gromacs.org">gmx-users-request@gromacs.org</a>.<br>Can&#39;t post? Read <a href="http://www.gromacs.org/Support/Mailing_Lists" target="_blank">http://www.gromacs.org/Support/Mailing_Lists</a><br>
</font></span></blockquote></div><br>