Parallel graph coloring heuristics to color large-scale general jacobian matrices

Barry Smith bsmith at mcs.anl.gov
Thu Sep 24 15:26:30 CDT 2009


On Sep 24, 2009, at 2:17 PM, Jed Brown wrote:

> [moving to petsc-dev from petsc-users]
>
> Rafael Santos Coelho wrote:
>> I believe I'm going to stick with strategy # 2 (writing my own
>> MyMatFDColoringCreate, etc) because, to me, it sounds simpler,  
>> since I'm
>> on a tight time schedule right now and that I'm quite knowledgeable
>> about how things go inside the SNES (two years dealing with nonlinear
>> problems in PETSc finally paid off) and the MatFDColoring modules.  
>> Plus,
>> using my own data structures would be of great help to me as well,  
>> given
>> that it took me a considerable amount of time to design them  
>> efficiently.
>
> Wait!  Are you providing the coloring or computing a matrix once you
> have the coloring?  These are different things and you should use
> MatColoringRegisterDynamic() if you are providing the former.
>
    Jed is absolutely right. It is not that you should do strategy #2.  
You should do 1) and then do 2).
The coloring activity should be separate from the using the coloring  
activity. I will be very upset if they are munged together.

>
> Barry, MatGetColoring() currently has the parallel logic hardwired, it
> would need a little work to get the parallel matrix passed to the
> coloring function.

    Jed,

      Could point, thanks for pointing this out. I will fix this by  
taking that "to sequential" code and imbed it into the current
sequential implementations.

    Fafael,

      Please work with petsc-dev on this development (not petsc-3.0.0).


    Barry

>
> Jed
>




More information about the petsc-dev mailing list