Let me get back to you. Thanks a lot. On Sat, Mar 25, 2017 at 11:15 PM, Barry Smith <[email protected]> wrote:
> > First set a new PETSC_ARCH say arch-opt and ./configure with the > additional argument --with-debugging=0 then recompile PETSc with the new > PETSC_ARCH and recompile your code then send the new -log_view output. > > Barry > > > ########################################################## > # # > # WARNING!!! # > # # > # This code was compiled with a debugging option, # > # To get timing results run ./configure # > # using --with-debugging=no, the performance will # > # be generally two or three times faster. # > # # > ########################################################## > > > > On Mar 25, 2017, at 11:08 PM, Bodhisatta Pramanik <[email protected]> > wrote: > > > > > > Send all the output in the error message: > > > > [0]PETSC ERROR: --------------------- Error Message > -------------------------------------------------------------- > > [0]PETSC ERROR: Object is in wrong state > > [0]PETSC ERROR: Must call EPSSolve() first: Parameter #1 > > [0]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html > for trouble shooting. > > [0]PETSC ERROR: Petsc Release Version 3.7.5, Jan, 01, 2017 > > [0]PETSC ERROR: ./RunPart on a arch-linux2-c-debug named > research-5.ece.iastate.edu by bodhi91 Sat Mar 25 22:33:56 2017 > > [0]PETSC ERROR: Configure options --with-cc=gcc --with-css=g++ > -with-fc=gfortran --download-fblaslapack --download-mpich > > [0]PETSC ERROR: #10468 EPSComputeError() line 643 in > /tmp/Bodhi/slepc-3.7.3/src/eps/interface/epssolve.c > > 0.000000 2.0795e-317 > > > > > > Send the output from -log_view: > > I have attached the .txt file: "Log Summary".txt > > > > > > Ok. Since it only stores half the matrix it requires less memory and > because of the way it does the MatMult and MatSolve it can be a tiny bit > faster. > > I do get a little improvement in speed, but nothing significant. > > > > Thanks, > > Bodhi > > > > > > On Sat, Mar 25, 2017 at 10:56 PM, Barry Smith <[email protected]> > wrote: > > > > > On Mar 25, 2017, at 10:48 PM, Bodhisatta Pramanik <[email protected]> > wrote: > > > > > > Try -st_pc_type gamg: > > > > > > Doing this with the existing eigensolver,linear solver : ./RunPart > -eps_type jd -eps_nev 3 -st_ksp_type cg -st_ksp_rtol 0.001 -eps_tol 0.001 > -st_pc_type gamg -eps_smallest_real results in the following issues:- > > > PETSC ERROR: Object is in wrong state > > > PETSC ERROR: Must call EPSSolve() first: Parameter #1 > > > > I cannot explain this. A different preconditioner with nothing else > changed shouldn't cause any problem like this. Send all the output in the > error message. > > > > > > Try -st_pc_type sor > > > > > > Doing this again with the existing eigensolver,linear solver returns > me the eigenvalues but it takes more time. (106 seconds) for a Laplacian > matrix of 200K size. The bjacobi was giving me the same eigenvalues but in > 60 seconds. > > > > Ok, this is reasonable. > > > > > > > > > > > Run with -log_view to see where the computation is taking the most > time: > > > > Send the output from -log_view > > > > > > EPSSolve and KSPSolve take the most time to finish computation. > > > > > > Since the matrix is symmetric are you using the sbaij format instead > of AIJ? > > > > > > I am using the sbaij format but with block size 1. I guess that is > equivalent to the AIJ format itself. > > > > Ok. Since it only stores half the matrix it requires less memory and > because of the way it does the MatMult and MatSolve it can be a tiny bit > faster. > > > > Barry > > > > > > > > > > > Thanks, > > > Bodhi > > > > > > > > > > > > > > > On Sat, Mar 25, 2017 at 10:22 PM, Barry Smith <[email protected]> > wrote: > > > > > > > On Mar 25, 2017, at 8:52 PM, Bodhisatta Pramanik < > [email protected]> wrote: > > > > > > > > Hi, > > > > > > > > I apologize for the slepc question. I could not find any user lists > so I'm hoping someone on here might be able to offer some guidance. > > > > > > > > Problem Definition: > > > > I am working on a graph partitioning problem. I have the laplacian > of a large graph(500,000 nodes) and am interested in extracting its global > information in order to find good partitioning. An approach is to compute > the first few(4-5) eigenvalues and use that information to formulate the > partition algorithm. > > > > > > > > I am leveraging the EPS solvers of the Slepc library. It appears > that the Jacobi-davidson eigen solver gives me the eigenvalues in the > shortest period of time compared to others (Krylov-Schur, Rayleigh > quotient, Lanczos, etc). I use this eigensolver with the conjugate gradient > linear solver and the block-jacobi preconditioner. So this is what I am > basically passing through the command line: > > > > > > > > ./RunPart -eps_type jd -eps_nev 4 -st_ksp_type cg -st_ksp_rtol 0.001 > -eps_tol 0.001 -st_pc_type bjacobi -eps_smallest_real > > > > > > Try -st_pc_type gamg > > > > > > One one process default bjacobi results in ILU which is not a great > preconditioner. > > > > > > Also try -st_pc_type sor > > > > > > > > > > > Question: > > > > The time it takes to compute the first 4-5 eigenvectors of a matrix > of size (200k) is near about 60 seconds. CPU config: Intel Xeon 2GHz. I am > using a single processor to run my code. Is there any way I can gain major > speedup than what I am getting? > > > > > > Run with -log_view to see where the computation is taking the most > time. > > > > > > > > > > > Is it possible to obtain the eigenvalues inside 10-15 seconds of > such huge matrices even if I do not use multiple processor?? > > > > > > > > Can someone provide me with some valuable guidance?? > > > > > > Since the matrix is symmetric are you using the sbaij format > instead of AIJ? > > > > > > > > > > > Thanks, > > > > Bodhi > > > > > > > > > > > > > > > -- > > > Bodhisatta Pramanik, > > > Graduate Student, > > > Department of Electrical and Computer Engineering, > > > 301 Durham, > > > Iowa State University, > > > Ames,Iowa 50011, > > > [email protected] > > > 515-735-6300 > > > > > > > > > > -- > > Bodhisatta Pramanik, > > Graduate Student, > > Department of Electrical and Computer Engineering, > > 301 Durham, > > Iowa State University, > > Ames,Iowa 50011, > > [email protected] > > 515-735-6300 > > <Log Summary> > > -- *Bodhisatta Pramanik,* *Graduate Student,* *Department of Electrical and Computer Engineering,* *301 Durham,* *Iowa State University,* *Ames,Iowa 50011,* [email protected] *515-735-6300*
