The LAPACK forum has moved to https://github.com/Reference-LAPACK/lapack/discussions.

What is the Complexity and Time of a Scalapack Routine ??

Open discussion regarding features, bugs, issues, vendors, etc.

What is the Complexity and Time of a Scalapack Routine ??

Postby arad » Thu May 08, 2008 12:42 pm

Hi guys

I need to estimate the time and the complexity (in Gflops) of the routine PDGEQRF that computes the QR factorization of a matrix. Is there any routine in Scalapack that gives me these results? any link that gives advices on this ?

Thank you !
arad
 
Posts: 17
Joined: Wed Apr 16, 2008 4:12 pm

Postby Julien Langou » Thu May 08, 2008 2:04 pm

No there is no routine in ScaLAPACK that gives you the complexity cost of
a routine. Nor in LAPACK.

To get them you can go and look in the LAPACK Users' Guide the Appendix
C: Operation Counts for the BLAS and LAPACK pp.118-123. In the case,
where m>=n the standard costs for PDGEQRF (you need to look at DGEQRF)
is 2mn^2-2/3n^3.

There are some timing utility in ScaLAPACK and LAPACK but they are
internal, to get the time of a ScaLAPACK routine use whatever parallel timer
you are used to.
Julien Langou
 
Posts: 835
Joined: Thu Dec 09, 2004 12:32 pm
Location: Denver, CO, USA

Postby arad » Thu May 08, 2008 2:57 pm

thank you a lot

but i cant find this.. can u give me the link ?

thank you !
arad
 
Posts: 17
Joined: Wed Apr 16, 2008 4:12 pm

Postby Julie » Thu May 08, 2008 3:07 pm

Arad
Just take a look at the lawn 41 page 118.
http://www.netlib.org/lapack/lawnspdf/lawn41.pdf

For a complete list of the LAWNs, http://www.netlib.org/lapack/lawns/downloads/

Julie
Julie
 
Posts: 299
Joined: Wed Feb 23, 2005 12:32 am
Location: ICL, Denver. Colorado

Postby arad » Fri May 23, 2008 8:06 pm

Well I tried this in order to count the time required for running the QR routine of my program :

Code: Select all
       CALL CPU_TIME(T2)
       CALL PDGEQRF( M, N, A, IA, JA, DESCA, TAU, WORK, LWORK,
     $                    INFO )
       CALL CPU_TIME(T1)
       WRITE(*,*) ' TIME FOR QR =',T1-T2


is the routine CPU_TIME reliable for counting this way the time of the routine ? is there any better ?
arad
 
Posts: 17
Joined: Wed Apr 16, 2008 4:12 pm

Re: What is the Complexity and Time of a Scalapack Routine ??

Postby Julien Langou » Fri Aug 08, 2008 12:09 pm

To time a MPI routine, one pretty well accepted way to do is:
Code: Select all
MPI_Barrier /* so that every process enters the routine (almost) at the same time */
start_time
call routine
stop_time
MPI_Allreduce() /* to find the max time among all the processes */


By the way, another source to know the # of FLOPS of some LAPACK routines is dopla.f.
See Clint Whaley's post: http://icl.cs.utk.edu/lapack-forum/viewtopic.php?f=2&t=729

--julien
Julien Langou
 
Posts: 835
Joined: Thu Dec 09, 2004 12:32 pm
Location: Denver, CO, USA


Return to User Discussion

Who is online

Users browsing this forum: No registered users and 8 guests