[Trilinos-Users] Epetra vs. Tpetra

Frey Matthias (PSI) matthias.frey at psi.ch
Tue Oct 24 07:27:32 EDT 2017

Dear Trilinos-Users,

I'm facing a performance issue that I do not understand and would appreciate your help.

I implemented a Poisson solver for block-structured grids using Epetra. In order to use newer features I wanted to replace Epetra with Tpetra
but the execution slowed down extremely.

In order to reproduce this result I implemented a small test example where the time for the initialization of the Poisson matrix (3D problem) is measured.
Btw, I initialize the matrix as I do it in the original code, but there I use another library that does the adaptive mesh refinement etc., hence, I iterate over boxes that specify the domain. Each core should get another box.

When I run the example with 4 cores and 128 grid points in each direction, Epetra is 10 times faster than Tpetra. I do not understand what I'm doing wrong.

$ mpirun -np 4 testEpetra 128
Number of processes: 4
Dimension: 128
Elapsed time: 4.5793 seconds.

$ mpirun -np 4 testTpetra 128
Number of processes: 4
Dimension: 128
Elapsed time: 42.6839 seconds.


I attached a tar-file that contains both *.cpp files a readme. Furthermore, I provide everything to build the examples using CMake.

Best regards,

Matthias Frey

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://trilinos.org/pipermail/trilinos-users/attachments/20171024/6fa3375d/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: EpetraVsTpetra.tar
Type: application/x-tar
Size: 30720 bytes
Desc: EpetraVsTpetra.tar
URL: <https://trilinos.org/pipermail/trilinos-users/attachments/20171024/6fa3375d/attachment.tar>

More information about the Trilinos-Users mailing list