[Trilinos-Users] integrate out-of-core matrix implementation with Trilinos

Zheng Da dzheng5 at jhu.edu
Tue Mar 17 12:01:03 MDT 2015


Hello,

We are a team from Johns Hopkins University. We are implementing SSD-based
matrix operations and especially interested in optimizing sparse matrix
multiplication on a large SSD array. Our goal is to have matrix operations
run at the speed comparable to the in-memory implementation as we did for
graph analysis using SSDs (https://github.com/icoming/FlashGraph).

We hope to integrate our matrix implementation with Trilinos so our system
will have an eigensolver and also be able to compute various matrix
decomposition. It seems to me that all Trilinos packages reply on two
packages (Epetra or Tpetra) for basic matrix operations. These two packages
provide the perfect interface for out-of-core matrix implementation. So we
plan to reimplement one of them with our SSD-based matrix/vector
implementation.

Will reimplementing Epetra or Tpetra be sufficient to port Anasazi to our
system? I also try to understand how much work will it be involved. Epetra
has almost 67,000 lines of code. In my standard, it's a very large package.
Could you tell me what classes in Epetra should be implemented in order to
run Anasazi?

Another matrix decomposition we like to have is QR decomposition. I'm not
sure what Trilinos package implements it.

Another question is about maintenance. Reimplementing Epetra or Tpetra will
be a lot of work. If we do implement it, we also hope our implementation
will work with Trilinos' future release. What are your suggestions of
making our work more maintainable?

Thanks,
Da
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://software.sandia.gov/pipermail/trilinos-users/attachments/20150317/c223d3f6/attachment.html>


More information about the Trilinos-Users mailing list