<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">Anders:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Dear PETSc Users,<br>
<br>
I want to find the smallest eigenpairs of a hermitian operator, A, implemented as a matrix-less operator.<br></blockquote><div> </div><div>Do you mean matrix-free operator?</div><div>There are slepc examples  using shell matrix:</div><div>slepc/src/eps/examples/tutorials<br></div><div>grep -i shell *.c </div><div>ex3.c</div><div>ex9.c</div><div>ex10.c </div><div>...</div><div>Take a look at these examples.</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
When computing y = Ax, I need the entire vector x, and I calculate the entire vector y, therefore I want to avoid the ownership of x and y to be spread over different processes.<br></blockquote><div> </div><div>Do you mean you want  x and y owned by a single process, not distributed?</div><div>Suggest doing sequential computation first, then move to parallel execution.</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
To what extend can this problem be parallelized in SLEPc. For instance can I use a block Krylov or block JD algorithm where different processes compute different matrix vector multiplications. If I provide the correct operations when constructing my MatShell, can I expect the FEAST algorithm to compute each contour point on a different process?<br></blockquote><div><br></div><div>Slepc developer might answer this question.</div><div><br></div><div>Hong</div></div><br></div></div>