<div dir="ltr"><div dir="ltr">On Fri, Dec 2, 2022 at 7:48 AM Karthikeyan Chockalingam - STFC UKRI via petsc-users <<a href="mailto:petsc-users@mcs.anl.gov">petsc-users@mcs.anl.gov</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg-2169580534702785644">





<div lang="EN-GB" style="overflow-wrap: break-word;">
<div class="m_-5165276704129641091WordSection1">
<p class="m_-5165276704129641091p1"><span class="m_-5165276704129641091s1"><span style="font-size:10pt">Hello,</span></span><span class="m_-5165276704129641091s1"><u></u><u></u></span></p>
<p class="m_-5165276704129641091p1"><span class="m_-5165276704129641091s1"><span style="font-size:10pt"><u></u> <u></u></span></span></p>
<p class="m_-5165276704129641091p1"><span class="m_-5165276704129641091s1"><span style="font-size:10pt">I have system matrix which is symmetric and thought I could make use of
</span></span><span style="font-size:9pt;color:rgb(108,54,169)">MatCreateSBAIJ. </span>
<span class="m_-5165276704129641091s1"><span style="font-size:10pt">I don’t understand how to set the blocksize bs. I believe it has taken into account, when having multiple components/dofs per node.<u></u><u></u></span></span></p>
<p class="m_-5165276704129641091p1"><span class="m_-5165276704129641091s1"><u></u> <u></u></span></p>
<p class="m_-5165276704129641091p1" style="margin-left:72pt">
<u></u><span class="m_-5165276704129641091s1"><span style="font-size:10pt"><span>(i)<span style="font:7pt "Times New Roman"">         
</span></span></span></span><u></u><span class="m_-5165276704129641091s1"><span style="font-size:10pt">Currently, I have only one scalar field to solve so I set bs = 1 as below. Is it correct?<u></u><u></u></span></span></p>
<p class="m_-5165276704129641091p1"><span class="m_-5165276704129641091s1"><u></u> <u></u></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:9pt;font-family:Menlo;color:black">      ierr =
</span><span style="font-size:9pt;font-family:Menlo;color:rgb(108,54,169)">MatCreateSBAIJ</span><span style="font-size:9pt;font-family:Menlo;color:black">(</span><span style="font-size:9pt;font-family:Menlo;color:rgb(108,54,169)">PETSC_COMM_WORLD</span><span style="font-size:9pt;font-family:Menlo;color:black">,
</span><span style="font-size:9pt;font-family:Menlo;color:rgb(28,0,207)">1</span><span style="font-size:9pt;font-family:Menlo;color:black">,
</span><span style="font-size:9pt;font-family:Menlo;color:rgb(100,56,32)">PETSC_DECIDE</span><span style="font-size:9pt;font-family:Menlo;color:black">,
</span><span style="font-size:9pt;font-family:Menlo;color:rgb(100,56,32)">PETSC_DECIDE</span><span style="font-size:9pt;font-family:Menlo;color:black">, N, N, d_nz,
</span><span style="font-size:9pt;font-family:Menlo;color:rgb(100,56,32)">PETSC_NULL</span><span style="font-size:9pt;font-family:Menlo;color:black">, o_nz,
</span><span style="font-size:9pt;font-family:Menlo;color:rgb(100,56,32)">PETSC_NULL</span><span style="font-size:9pt;font-family:Menlo;color:black">, &</span><span style="font-size:9pt;font-family:Menlo;color:rgb(50,109,116)">A</span><span style="font-size:9pt;font-family:Menlo;color:black">);
</span><span style="font-size:9pt;font-family:Menlo;color:rgb(100,56,32)">CHKERRQ</span><span style="font-size:9pt;font-family:Menlo;color:black">(ierr);<u></u><u></u></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:9pt;font-family:Menlo;color:black"><u></u> <u></u></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:9pt;font-family:Menlo;color:black">   ierr =
</span><span style="font-size:9pt;font-family:Menlo;color:rgb(108,54,169)">MatCreateVecs</span><span style="font-size:9pt;font-family:Menlo;color:black">(</span><span style="font-size:9pt;font-family:Menlo;color:rgb(50,109,116)">A</span><span style="font-size:9pt;font-family:Menlo;color:black">,
 &</span><span style="font-size:9pt;font-family:Menlo;color:rgb(50,109,116)">right</span><span style="font-size:9pt;font-family:Menlo;color:black">, &</span><span style="font-size:9pt;font-family:Menlo;color:rgb(50,109,116)">left</span><span style="font-size:9pt;font-family:Menlo;color:black">);</span><span style="font-size:9pt;font-family:Menlo;color:rgb(100,56,32)">CHKERRQ</span><span style="font-size:9pt;font-family:Menlo;color:black">(ierr);<u></u><u></u></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:9pt;font-family:Menlo;color:black"><u></u> <u></u></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:9pt;font-family:Menlo;color:black"><u></u> <u></u></span></p>
<p class="m_-5165276704129641091MsoListParagraph" style="margin-left:72pt;background:white">
<u></u><span style="font-size:9pt;font-family:Menlo;color:black"><span>(ii)<span style="font:7pt "Times New Roman"">        
</span></span></span><u></u><span style="font-size:9pt;font-family:Menlo;color:black">If you multiple components/dofs per node, say 2, is the then block size = 2?<u></u><u></u></span></p>
<p class="m_-5165276704129641091MsoListParagraph" style="margin-left:72pt;background:white"><span style="font-size:9pt;font-family:Menlo;color:black"><u></u> <u></u></span></p>
<p class="m_-5165276704129641091MsoListParagraph" style="margin-left:72pt;background:white">
<u></u><span style="font-size:9pt;font-family:Menlo;color:black"><span>(iii)<span style="font:7pt "Times New Roman"">       
</span></span></span><u></u><span style="font-size:9pt;font-family:Menlo;color:black">To apply homogenous Dirichlet boundary condition, I make use of MatZeroRowsColumns. It works in serial but while applying in parallel the following
 error is thrown,  <u></u><u></u></span></p>
<p class="m_-5165276704129641091p1"><span class="m_-5165276704129641091s1"><u></u> <u></u></span></p>
<p class="m_-5165276704129641091p1" style="text-indent:36pt"><span class="m_-5165276704129641091s1"><span style="font-size:10pt">[0]PETSC ERROR: No method zerorowscolumns for Mat of type mpisbaij<u></u><u></u></span></span></p>
<p class="m_-5165276704129641091p1" style="text-indent:36pt"><span class="m_-5165276704129641091s1"><span style="font-size:10pt"><u></u> <u></u></span></span></p>
<p class="m_-5165276704129641091p1" style="text-indent:36pt"><span class="m_-5165276704129641091s1"><span style="font-size:10pt">      How do I fix it?<u></u><u></u></span></span></p>
<p class="m_-5165276704129641091p1"><span class="m_-5165276704129641091s1"><span style="font-size:10pt"><u></u> <u></u></span></span></p>
<p class="m_-5165276704129641091MsoListParagraph" style="margin-left:72pt">
<u></u><span>(iv)<span style="font:7pt "Times New Roman"">                          
</span></span><u></u><span style="font-size:9pt;font-family:Menlo;color:black">Is there performance again, when using
</span><span style="font-size:9pt;color:rgb(108,54,169)">MatCreateSBAIJ </span><span style="font-size:9pt;font-family:Menlo;color:black">for large symmetric system matrix? I read there is more communication involved.</span></p></div></div></div></blockquote><div>For block size 1, there is no improvement. Even for 2 I would say it is small. The SBAIJ matrix will do the same number of flops</div><div>and use about the same bandwidth, but it will save on storage. Unless storage is a big deal for you, I would use AIJ, get everything</div><div>working, and profile to see how important various operations are.</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</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"><div class="msg-2169580534702785644"><div lang="EN-GB" style="overflow-wrap: break-word;"><div class="m_-5165276704129641091WordSection1">
<p class="MsoNormal">Best,</p>
<p class="MsoNormal">Karthik.</p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<p><span style="font-size:6pt">This email and any attachments are intended solely for the use of the named recipients. If you are not the intended recipient you must not use, disclose, copy or distribute this email or any of its attachments and should notify the sender immediately and delete this email from your system. UK Research and Innovation (UKRI) has taken every reasonable precaution to minimise risk of this email or any attachments containing viruses or malware but the recipient should carry out its own virus and malware checks before opening the attachments. UKRI does not accept any liability for any losses or damages which the recipient may sustain due to presence of any viruses. </span></p></div>


</div></blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>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</div><div><br></div><div><a href="http://www.cse.buffalo.edu/~knepley/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div></div></div>