Thanks Roy & Dimtry, I don't see switching up to a matrix free method anytime soon. I'm not using hypre with my 3-D elasticity just yet. I experienced with GAMG but for our problem it's rather delicate on how often we need to rebuild the PC (GAMG).
I'll try to sift through the code and see if KSP and PC are keeping memory. Also since I'm running mostly on stampede and building my own libMesh, maybe you guys can give suggestions as to specific optimization flags to build PETSc and libMesh to increase the performance? Thanks, Ata On Mon, Nov 18, 2013 at 8:11 AM, Dmitry Karpeyev <[email protected]>wrote: > Before writing matrix-free stuff, however, I would strongly recommend > profiling > (e.g., -log_summary). Krylov vectors might be eating up quite a bit of > memory, > as might the preconditioner (e.g., (I)LU will keep the factors around, > Hypre will copy > the matrix, etc.). Convergence of a coupled matrix-free solve might be > rather slow, > and, if you are using a Krylov method, that will likely blow up the size > of the Krylov > space (unless you use an aggressive restart value, but that will further > impact > convergence). That might undo any memory savings from ditching the Jacobian > and the preconditioner data structures. > > Cheers, > Dmitry. > > > On Sun, Nov 17, 2013 at 8:47 PM, Roy Stogner <[email protected]>wrote: > >> >> On Sun, 17 Nov 2013, Ataollah Mesgarnejad wrote: >> >> > I'm just trying to cut out unnecessary parts of my Code. My main >> problem is the memory with my 3-D elasticity + fracture >> > problem. ParallelMesh helps quite a bit but I would like to make the >> memory footprint even smaller and hopefully make things >> > run a bit faster in the process. I would appreciate any suggestions. >> >> If you're already using ParallelMesh then your next big memory hog is >> probably the sparse matrix, which suggests one drastic option: switch >> to a Jacobian-free solve. IIRC we've got support for PETSc "shell >> matrix" interfaces, so you can implement a Jacobian-vector-product >> function instead of allocating a matrix. >> --- >> Roy >> >> >> ------------------------------------------------------------------------------ >> DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps >> OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access >> Free app hosting. Or install the open source package on any LAMP server. >> Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native! >> >> http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk >> _______________________________________________ >> Libmesh-users mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/libmesh-users >> > > > > -- A. Mesgarnejad PhD Student, Research Assistant Mechanical Engineering Department Louisiana State University 2203 Patrick F. Taylor Hall Baton Rouge, La 70803 ------------------------------------------------------------------------------ DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access Free app hosting. Or install the open source package on any LAMP server. Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native! http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk _______________________________________________ Libmesh-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-users
