<div dir="ltr"><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)">Hello dear PETSc users,</div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)"><br></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)">This is a problem that pops up often, from what I see, in the mailing list. My program takes a long time assembling the matrix. </div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)"><br></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)">What I know:</div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)"><br></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)"><ul><li>Matrix Size is (MatMPIAIJ) 2670402<br></li><li>Number of processes running PETSc: 95<br></li><li>Not going to virtual memory (no swapping, used mem well withing each node's capacity)<br></li><li>System is partitioned with ParMETIS for load balancing<br></li><li>I see memory moving around in each node (total used memory changes a bit, grows and then frees)<br></li><li>Matrix is filled in blocks of size 81x81 (FEM code, so this ends up being a sparse matrix)</li><li>I don't do flushes at all. Only MAT_FINAL_ASSEMBLY when all the MatSetValues are done. <br></li></ul></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)">Should I do <span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:medium">MAT_FLUSH_ASSEMBLY</span> even though I have enough memory to store the buffers? If so, how often? Every 100 blocks?</div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)"><br></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)">What else could it be? </div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)"><br></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)">Its taking several hours to asseble this matrix. I re-use the sparsity pattern, so subsequent assemblies are fast. Does this mean that my preallocation is wrong?</div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)"><br></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)">Regards,</div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)"><br></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)"><br></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)"><br></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small;color:rgb(7,55,99)"><br></div><div><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div>--</div><div><br></div><div><font face="georgia, serif" size="4">José Abell </font></div><div><font face="georgia, serif"><i>PhD Candidate</i></font></div><div><font face="georgia, serif">Computational Geomechanics Group</font></div><div><font face="georgia, serif"><span style="font-size:12.7273px">Dept. of Civil and Environmental Engineering</span><br></font></div><div><font face="georgia, serif">UC Davis</font></div><div><font face="georgia, serif"><a href="http://www.joseabell.com" target="_blank">www.joseabell.com</a></font></div><div><br></div></div></div></div></div></div></div></div></div>
</div>