[petsc-users] Storage space for symmetric (SBAIJ) matrix

Barry Smith bsmith at mcs.anl.gov
Tue Sep 21 11:01:58 CDT 2010


On Sep 21, 2010, at 9:35 AM, Daniel Langr wrote:

> Our preliminary idea is to construct a matrix with some legacy code, store matrix into a file (as we would do anyway for checkpointing purposes)

   Is this legacy code parallel? If not when you could only create SeqSBAIJ matrices anyways, correct? So you don't need parallel create from arrays just sequential from arrays? 

   All the MatView() and MatLoad() would be handled by PETSc so you don't need to worry about reading in the matrix in parallel (we do it for you).

   Barry


> and then load it into a solver. We are free to choose matrix storage scheme for a file, so we could prepare data to be in the format of arrays to be loaded into PETSc. For binary I/O we are experimenting with parallel HDF5 capabilities using MPI-I/O underneath. (PETSc has a HDF5 viewer, but if I am not wrong, it does not use parallel I/O). For really big problems parallel I/O is a must for us.
> 
> We are solving a nuclear structure problem, particularly a symmetry-adapted no-core shell model computations of a nuclei. (I do not understand much that kind of physics, my part is the eigensolver :).
> 
> Daniel
> 
> 
> 
> 
> Dne 21.9.2010 16:24, Jed Brown napsal(a):
>> On Tue, Sep 21, 2010 at 16:20, Daniel Langr<daniel.langr at gmail.com>  wrote:
>>> thanks much for your comprehensive answer, it will certainly help. I will
>>> look at the example codes. As for matrix assembly process, I would prefer
>>> constructing a matrix from arrays (to avoid dynamic assembly and additional
>>> memory costs) but there is nothing like MatCreateMPISBAIJWithArrays() or
>>> better MatCreateMPISBAIJWithSplitArrays() for symmetric matrices as for
>>> unsymmetric ones in PETSc.
>> 
>> This would be easy to add, but how would you go about building the
>> arrays yourself?  What sort of problems are you solving?
>> 
>> Jed
> 



More information about the petsc-users mailing list