<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;"><br id="lineBreakAtBeginningOfMessage"><div><br><blockquote type="cite"><div>On Aug 25, 2024, at 12:45 PM, Edoardo alinovi <edoardo.alinovi@gmail.com> wrote:</div><br class="Apple-interchange-newline"><div><div dir="auto">Thank you Barry, sounds great. I'll try it out in the next weeks! Is copy data such a bottleneck with respect to the solving time in your opinion? </div></div></blockquote><div><br></div><div>   If you are solving with the same matrix many times, then the matrix copy is not a big deal. </div><br><blockquote type="cite"><div><div dir="auto">I am not scared of building stuff on gpu directly, I basically assemble the petsc matrix and rhs in one point so it would be ok doing stuff on gpu directly. Is aij format ok for gpu or better CSR?</div></div></blockquote><div><br></div>   PETSc AIJ is essentially CSR and is what everyone supports. If you are solving with the same matrix many times, converting to MATAIJSELL up front will likely pay off, but this doesn't change user code.</div><div><br></div><div><br><blockquote type="cite"><div><div dir="auto"><div dir="auto"><br></div><div dir="auto">Cheers.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Il Dom 25 Ago 2024, 13:49 Edoardo alinovi <<a href="mailto:edoardo.alinovi@gmail.com">edoardo.alinovi@gmail.com</a>> ha scritto:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto">Hello Petsc friends,<div dir="auto"><br></div><div dir="auto">As many people is doing,  I would like to explore a bit gpu capabilities (cuda) in petsc. </div><div dir="auto"><br></div><div dir="auto">Before attemping any coding effort I would like to hear from you if all of this make sense:</div><div dir="auto">- compile mpi with cuda support</div><div dir="auto">- compile petsc with cuda support</div><div dir="auto">- build matrix and vectors as MATAIJCUSPARSE and VECMPICUDA to tell petsc using gpu.</div><div dir="auto"><br></div><div dir="auto">That's really it or do I need to take care of something else? </div><div dir="auto"><br></div><div dir="auto">I have seen that there is an amgXWrapper library aroud, but not sure if it is still relevant now or not.</div><div dir="auto"><br></div><div dir="auto">Thank you for the suggestions!</div><div dir="auto"><br></div><div dir="auto"><br></div></div>
</blockquote></div>
</div></blockquote></div><br></body></html>