[aspect-devel] PETSc support

Ian Rose ian.rose at berkeley.edu
Fri Jan 17 11:58:42 PST 2014


Alright, the problem seems to be in one of the inner CG solves.  I can make
it disappear by replacing

SolverCG<LinearAlgebra::Vector> solver(solver_control);
with
PETScWrappers::SolverCG solver(solver_control);


Some timing information follows, composition_passive.prm run in optimized
mode with four processors--


Aspect optimized, PETSc optimized:
+---------------------------------------------+------------+------------+
| Total wallclock time elapsed since start    |      69.9s |            |
|                                             |            |            |
| Section                         | no. calls |  wall time | % of total |
+---------------------------------+-----------+------------+------------+
| Assemble Stokes system          |       101 |      9.88s |        14% |
| Assemble composition system     |       202 |      12.6s |        18% |
| Assemble temperature system     |       101 |      8.66s |        12% |
| Build Stokes preconditioner     |       101 |      7.66s |        11% |
| Build composition preconditioner|       202 |    0.0144s |     0.021% |
| Build temperature preconditioner|       101 |   0.00868s |     0.012% |
| Solve Stokes system             |       101 |      15.2s |        22% |
| Solve composition system        |       202 |      8.11s |        12% |
| Solve temperature system        |       101 |      4.12s |       5.9% |
| Initialization                  |         2 |    0.0451s |     0.065% |
| Postprocessing                  |       101 |      1.27s |       1.8% |
| Setup dof systems               |         1 |     0.157s |      0.22% |
+---------------------------------+-----------+------------+------------+

Aspect optimized, Trilinos:
+---------------------------------------------+------------+------------+
| Total wallclock time elapsed since start    |      49.1s |            |
|                                             |            |            |
| Section                         | no. calls |  wall time | % of total |
+---------------------------------+-----------+------------+------------+
| Assemble Stokes system          |       101 |      9.16s |        19% |
| Assemble composition system     |       202 |      9.31s |        19% |
| Assemble temperature system     |       101 |      6.03s |        12% |
| Build Stokes preconditioner     |       101 |      8.51s |        17% |
| Build composition preconditioner|       202 |      1.32s |       2.7% |
| Build temperature preconditioner|       101 |     0.652s |       1.3% |
| Solve Stokes system             |       101 |      8.24s |        17% |
| Solve composition system        |       202 |      1.57s |       3.2% |
| Solve temperature system        |       101 |     0.836s |       1.7% |
| Initialization                  |         2 |    0.0537s |      0.11% |
| Postprocessing                  |       101 |      1.04s |       2.1% |
| Setup dof systems               |         1 |     0.157s |      0.32% |
+---------------------------------+-----------+------------+------------+



On Fri, Jan 17, 2014 at 11:32 AM, Ian Rose <ian.rose at berkeley.edu> wrote:

> Okay, I can reproduce the 50x slowdown by linking to the debug PETSc. So
> there's that.  However, I still get unsynchronized calls to PETSc when
> running on several processors with the debug version... It's certainly
> possible that something is up with my install, but the step-40 tutorial
> does seem to run fine.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://geodynamics.org/pipermail/aspect-devel/attachments/20140117/0ad581d5/attachment.html>


More information about the Aspect-devel mailing list