The computed eigenvalue has 7 matching digits, which agrees with the used 
tolerance. If you want more matching digits you have to reduce the tolerance.

The performance seems reasonable for up to 64 processes, so yes the problem may 
be too small for more processes. But performance depends also a lot on the 
sparsity pattern of the matrix. Take into account that scalability of 
matrix-vector products in SBAIJ matrices is expected to be worse than in AIJ. 
Anyway, to answer questions about performance it is better that you send the 
output of -log_view

Jose


> El 12 jul 2023, a las 10:18, Runfeng Jin <[email protected]> escribió:
> 
> Hi,
>  When I try to increase the number of processors to solve the same matrix(to 
> acquire the smallest eigenvalue) , I find all the results differ from each 
> other within the  1e-5 scope (Though the ||Ax-kx||/||kx|| are all achieve 
> 1e-8)  . And the solve time are first decreasing then increasing.
> my question is 
> (1) Is there anyway to make the result more constant 
> (2)  Does the time decreasing because the matrix dimension are too small for 
> so many processors? Is there any way to reduce the solve time when increasing 
> the number of processors?
> 
> Thank you!
> Runfeng
> 
> 
> matrix type  MATSBAIJ
> matrix dimension  2078802
> solver krylovschur
> blocksize 1
> dimension of the subspace   PETSC_DEFAULT
> number of eigenvalues   6
> the maximum dimension allowed for the projected problem   PETSC_DEFAULT
> -eps_non_hermitian 
> 
> number of processors          result     solve time
> 16            -302.06881196   526
> 32            -302.06881892   224
> 64            -302.06881989   139
> 128           -302.06881236   122
> 256           -302.06881938   285
> 512           -302.06881029   510
> 640           -302.06882377   291

Reply via email to