<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Aug 14, 2019 at 3:37 PM Jed Brown <<a href="mailto:jed@jedbrown.org">jed@jedbrown.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Mark Adams via petsc-dev <<a href="mailto:petsc-dev@mcs.anl.gov" target="_blank">petsc-dev@mcs.anl.gov</a>> writes:<br>
<br>
> On Wed, Aug 14, 2019 at 2:35 PM Smith, Barry F. <<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>> wrote:<br>
><br>
>><br>
>>   Mark,<br>
>><br>
>>    Would you be able to make one run using single precision? Just single<br>
>> everywhere since that is all we support currently?<br>
>><br>
>><br>
> Experience in engineering at least is single does not work for FE<br>
> elasticity. I have tried it many years ago and have heard this from others.<br>
> This problem is pretty simple other than using Q2. I suppose I could try<br>
> it, but just be aware the FE people might say that single sucks.<br>
<br>
When they say that single sucks, is it for the definition of the<br>
operator or the preconditioner?<br></blockquote><div><br></div><div>Operator.</div><div><br></div><div>And "ve seen GMRES stagnate when using single in communication in parallel Gauss-Seidel. Roundoff is nonlinear.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
As point of reference, we can apply Q2 elasticity operators in double<br>
precision at nearly a billion dofs/second per GPU. </blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
I'm skeptical of big wins in preconditioning (especially setup) due to<br>
the cost and irregularity of indexing being large compared to the<br>
bandwidth cost of the floating point values.<br>
</blockquote></div></div>