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
