[Trilinos-Users] time cost by AztecOO::Iterate(int MaxIters, double Tolerance)

Henian Xia xiahenian at gmail.com
Thu Mar 31 12:11:15 MDT 2011


Hello everyone,
In my application, I have to call AztecOO::Iterate(int MaxIters,double
Tolerance) to solve the equation Ax=b. There is output like below when
calling this function:

        ********************************************************
        ***** Problem: Epetra::CrsMatrix
        ***** Preconditioned GMRES solution
        ***** 1 step block Jacobi
        ***** No scaling
        *******************************************************
                iter:    0           residual = 1.000000e+00
                ....
                iter:   41           residual = 3.345028e-08
                iter:   42           residual = 2.219359e-08
                iter:   43           residual = 1.459019e-08
                iter:   44           residual = 9.729064e-09
        Solution time: 0.051379 (sec.)
        total iterations: 44*

But I found that the displayed "Solution time" was sometimes much smaller
than the real time. For example, I used the following simple code to time
the calling to that method.

*double ttemp3 = MPI_Wtime();
(*solver).Iterate(2000, 1.0E-8);
double ttemp4 = MPI_Wtime();
double timeUsedByCallingIterate = ttemp4 - ttemp3;*

Especially when I use multiple CPUs, such as 960 cores, the difference
between the calculated "timeUsedByCallingIterate" and the output "Solution
time" can be huge. Why is this happening please?

Thank you,
Henian
-- 
Henian Xia
Graduate Research Assistant
Department of MABE
University of Tennessee, Knoxville
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://software.sandia.gov/pipermail/trilinos-users/attachments/20110331/fbed9f7d/attachment.html 


More information about the Trilinos-Users mailing list