I assume the matrix is relatively sparse?

   It is not even close to being amenable to this type of thing.

   I would simply have your program save the matrix entries to disk in some 
simple binary format and write another simple program that reads them in and 
sets them into a SeqAIJ matrix, then VecView that matrix to a binary viewer, 
finally have your eigenvalue code simply use VecLoad to load the matrix and 
start the eigen computations.

   Barry


> On Aug 17, 2018, at 2:45 PM, Pham, Dung Ngoc <[email protected]> wrote:
> 
> Dear Petsc developers and Users,
> 
> I am constructing a very large matrices (~5,000,000*5,000,000) for a 
> generalized eigenvalue problem in MPIAIJ format across multiple nodes. The 
> program is to be run on a shared HPC cluster using Slurm workload manager. 
> Due to multiple loops and calculations needed, the matrix construction time 
> is long (may span for more than a week).  
> 
> Hence, I am trying to see if I can implement checkpoints into the codes, so 
> that the matrix can be constructed partially through multiple job 
> submissions, each job picking up from where the previous one left until the 
> matrix is fully built and we can write the global matrix into a binary file 
> for further eigenvalue analysis. My questions are: 
> Does Petsc MPIAIJ format is amenable to such check points? 
> If so, are there any subroutines/functions that I can start with?  
> 
> I appreciate any comments/suggestions. 
> 
> Thank you, 
> D. N. Pham

Reply via email to