[petsc-dev] Clarification on Inodes in PETSc

Chetan Jhurani chetan.jhurani at gmail.com
Tue Dec 21 17:44:28 CST 2010


Hello,

I need a confirmation that my understanding of Inodes
in PETSc is correct.  I want to reuse the Inode information
already computed in PETSc in functions I'd write outside it.

As I see from the code, Inode algorithms are used when
adjacent rows in AIJ structure have identical column locations
for non-zeros.  These locations are always kept in memory for
all the rows but when doing sparse operations (multiply,
factorize) column indices from only 1 row for each set
of Inodes are used.  I assume there is no MatMatMult using
Inodes because there isn't much benefit if the second
matrix has large number of columns.

1. Are the statements above correct?
2. Is there anything crucial I'm missing?
3. I'll do benchmarking for my problems, but is there
   some publicly available data of speedups when
   Inodes are enabled?

Thanks,

Chetan





More information about the petsc-dev mailing list