Re: [petsc-users] question about small matrices

2019-09-25 Thread Jed Brown via petsc-users
"Povolotskyi, Mykhailo via petsc-users"  writes:

> Hi Matthew,
>
> is it possible to do in principle what I would like to do?

SNES isn't meant to solve tiny independent systems.  (It's just high
overhead for that purpose.)  You can solve many such instances together
by creating a residual function that evaluates them all.  The linear
algebra will be more efficient with that granularity, though all
sub-problems will take the same number of Newton iterations.


Re: [petsc-users] question about small matrices

2019-09-25 Thread Povolotskyi, Mykhailo via petsc-users
Hi Matthew,

is it possible to do in principle what I would like to do?


On 9/25/2019 3:12 AM, Matthew Knepley wrote:
On Wed, Sep 25, 2019 at 1:27 AM Povolotskyi, Mykhailo via petsc-users 
mailto:petsc-users@mcs.anl.gov>> wrote:
Dear Petsc developers,

in my application I have to solve millions of linear and non-linear
systems with small matrices (2x2, 3x3,..., 10x10).

I consider them as dense, and use SNES with KSP method PREONLY, and LU
preconditioner.

I found that when KSPSolve is called only 25% of time is spend in
lapack, the rest is PETSc overhead.

I know how to call lapack directly to solve a linear system.

Question: is it possible to call lapack directly in the SNES solver to
avoid the KSPSolve overhead?

Question: Do you solve a bunch of them simultaneously?

  Thanks,

 Matt

Thank you,

Michael.



--
What most experimenters take for granted before they begin their experiments is 
infinitely more interesting than any results to which their experiments lead.
-- Norbert Wiener

https://www.cse.buffalo.edu/~knepley/


[petsc-users] question about small matrices

2019-09-24 Thread Povolotskyi, Mykhailo via petsc-users
Dear Petsc developers,

in my application I have to solve millions of linear and non-linear 
systems with small matrices (2x2, 3x3,..., 10x10).

I consider them as dense, and use SNES with KSP method PREONLY, and LU 
preconditioner.

I found that when KSPSolve is called only 25% of time is spend in 
lapack, the rest is PETSc overhead.

I know how to call lapack directly to solve a linear system.

Question: is it possible to call lapack directly in the SNES solver to 
avoid the KSPSolve overhead?

Thank you,

Michael.