[petsc-users] loading huge matrix with MatLoad in parallel implementation

Barry Smith bsmith at mcs.anl.gov
Thu Jul 29 15:27:28 CDT 2010


On Jul 29, 2010, at 3:06 PM, Yujie wrote:

> Dear PETSc developers,
> 
> When the program based on PETSc runs in parallel mode, how much size
> of the matrix can MatLoad load?

   Currently the limit is that each individual process cannot hold more then 2 billion nonzeros when using MatLoad(). So if you have more processes you can hold as big a matrix as you want. Within a few days PETSc-dev will eliminate this limit (which comes from how we use MPI).

  But you need to ./configure PETSc with the option --with-64-bit-indices and need an operating system that supports 64 bit points (which you likely have).

> Does the program need to save the whole matrix in one CPU,

  No, absolutely NOT.


  Barry


> or is each
> CPU in charge of the part of the matrix?
> 
> For example, I have one matrix of ~30G. There are two CPUs on each
> nodes with totally16G memory. I have 8 nodes. I use 16CPUs for
> running. Can I load this matrix using MatLoad? Thanks a lot.
> 
> Regards,
> Yujie



More information about the petsc-users mailing list