Ryan Yan vyan2000 at
Sun Sep 20 10:28:04 CDT 2009

I forget to mention that, the stencil of the mesh has face connectivity. For
each tetrahedron* *mesh point,  it has a self-connectivity, and 4 other
connectivities( tet has 4 faces). For Hexahedron, it has a
self-connectivity, and 6 other connectivities( hex has 6 faces).

the dof 25 results from [u, v, w, p, a]^5, here 5 means 5 physical phase,
for instance, bubble1, liquid1,  bubble2, liquid2,solid1.

u, v, w, p, a from conservation of the physics.


On Sun, Sep 20, 2009 at 11:20 AM, Ryan Yan <vyan2000 at> wrote:

> Hi All,
> I have a large size application. Mesh size is 30000 nodes, with dof 25 on
> each vertex. And it's 3d unstructured,  Tet, and Hex mesh. In the following
> I will denote blksize=25
> I am testing how to build up a PETSc matrix object quick and fast.
> The data I have is Block Compressed Sparse Row(BCSR) files. And my
> objective is to read BCSR files and generate PETSc Binaries
> Firstly, I choose the MATMPIAIJ, I opened the BCSR data files on each
> processor, and set up the preallocation use
> MatMPIAIJSetPreallocation(A,blksize,PETSC_NULL,blksize,PETSC_NULL); The
> reason why I choose 25 as the number for d_nz and o_nz is that I do not have
> access to the ordering of the vertices. So it's the worst case set up, and
> it takes about 7 minutes on 30 MIPS node(180 processors) to write the output
> into PETSc binaries.
> Secondly, I choose the MatMPIBAIJ, and same procedure as above, but also
> set up
> MatMPIBAIJSetPreallocation(A,blksize,blksize,PETSC_NULL,blksize,PETSC_NULL),
> here blksize = 25 and it's also the worst case; This experiments takes
> forever and could not generate the PETSc binaries.
> I guess the reason why it takes so long in the MATMPIBAIJ case is that I
> did not set up the preallocation accurately. Alougth I think the
> preallocation is also not accurate in the MATMPIAIJ case, but it seems like
> the preallocation effect is not as serious as for the MPIBAIJ. Correct me
> please, if there are other reasons.
> Can I anyone please give a hint on how to set up the preallocation right
> for a unstructured mesh without knowing the mesh ordering?
> Thank you very much in advance,
> Yan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the petsc-users mailing list