<div dir="ltr"><div dir="ltr">On Mon, Mar 18, 2019 at 12:15 PM Zhang, Junchao via petsc-dev <<a href="mailto:petsc-dev@mcs.anl.gov">petsc-dev@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>
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div>Let's see how the author thought about PETSc. The author likes Chapel -- a PGAS language. In
<a href="https://www.dursi.ca/post/julia-vs-chapel.html" target="_blank">https://www.dursi.ca/post/julia-vs-chapel.html</a> he said his concerns about Chapel </div>
"the beginnings of a Chapel-native set of solvers from Scalapack or PETSc (both of which are notoriously hard to get started with, and in PETSc’s case, even install)"</div>
<div dir="ltr">
<div><br>
</div>
<div>His slides have more,</div>
<div dir="ltr">"</div>
<div dir="ltr">PETSc is a widely used library for large sparse iterative solves.</div>
<div> Excellent and comprehensive library of solvers</div>
<div> It is the basis of a significant number of home-made simulation codes</div>
<div> It is notoriously hard to start getting running with; nontrivial even for experts to install. </div></div></div></div></div></div></blockquote><div><br></div><div>This is a typical parochial take by someone with very limited experience. People who routinely install a lot of libraries</div><div>say that the install is very smooth. People like this who deal with only their own F90 and nothing else are scared. I would</div><div>point out that if you want nothing else, pip install petsc works fine. I can't believe we have spent this much time on an idiot.</div><div><br></div><div>I agree with your point below, which is made in an expanded fashion by Bill in his acceptance speech for the Ken Kennedy Award.</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><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">
<div> Significant fraction of PETSc functionality is tied up in large CSR matrices of reasonable structure partitioned by row, vectors, and solvers built on top.</div>
<div> What would a Chapel API to PETSc look like?</div>
<div> What would a Chapel implementation of some core PETSc solvers look like?</div>
<div>"</div>
<div>
<div>In my view, the good and the evil of MPI grow from one root: MPI has a local name space. MPI does not try to define a global data structure. The evil is users have to do their global naming, which can be very easy (e.g., in stencil) or very hard (e.g.,
refine an unstructured mesh). The good is user has the freedom to design their own data structure (array, CSR, tree, hash table, mesh, ...). <br>
</div>
<div>PGAS languages tried to provide a set of global data structures, but which is very limited and did not meet requirements of many HPC codes. MPI challengers should start with AMR, but not VecAXPY.</div>
<div><br>
</div>
<div>
<div>
<div dir="ltr" class="gmail-m_411972903609016057m_-6424746920696823465m_7517727776330834292gmail-m_-1036358699404080240m_2875674088559197918gmail_signature">
<div dir="ltr">--Junchao Zhang</div>
</div>
</div>
<br>
</div>
</div>
</div>
</div>
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Sun, Mar 17, 2019 at 3:12 PM Smith, Barry F. via petsc-dev <<a href="mailto:petsc-dev@mcs.anl.gov" target="_blank">petsc-dev@mcs.anl.gov</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">
<br>
I stubbled on this today; I should have seen it years ago.<br>
<br>
Barry<br>
<br>
</blockquote>
</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>