Rechercher une page de manuel
dsecndtst.3lapack
Langue: en
Version: 273244 (debian - 07/07/09)
Section: 3 (Bibliothèques de fonctions)
NAME
SYNOPSIS
- PROGRAM TEST5
- INTEGER NMAX, ITS
- PARAMETER ( NMAX = 100, ITS = 5000 )
- INTEGER I, J
- DOUBLE PRECISION ALPHA, AVG, T1, T2, TNOSEC
- DOUBLE PRECISION X( NMAX ), Y( NMAX )
- DOUBLE PRECISION DSECND
- EXTERNAL DSECND
- INTRINSIC DBLE
- DO 10 I = 1, NMAX
- X( I ) = DBLE( 1 ) / DBLE( I )
- Y( I ) = DBLE( NMAX-I ) / DBLE( NMAX )
- 10 CONTINUE
- ALPHA = 0.315D0
- T1 = DSECND( )
- DO 30 J = 1, ITS
- DO 20 I = 1, NMAX
- Y( I ) = Y( I ) + ALPHA*X( I )
- 20 CONTINUE
- ALPHA = -ALPHA
- 30 CONTINUE
- T2 = DSECND( )
- WRITE( 6, 9999 )T2 - T1
- IF( T2-T1.GT.0.0D0 ) THEN
- WRITE( 6, 9998 )1.0D0 / ( T2-T1 )
- ELSE
- WRITE( 6, 9994 )
- END IF
- TNOSEC = T2 - T1
- T1 = DSECND( )
- DO 50 J = 1, ITS
- DO 40 I = 1, NMAX
- Y( I ) = Y( I ) + ALPHA*X( I )
- 40 CONTINUE
- ALPHA = -ALPHA
- T2 = DSECND( )
- 50 CONTINUE
- WRITE( 6, 9997 )T2 - T1
- AVG = ( ( T2-T1 )-TNOSEC )*1000.D0 / DBLE( ITS )
- WRITE( 6, 9996 )AVG
- IF( TNOSEC.GT.0.0D0 ) WRITE( 6, 9995 )1000.D0*AVG / TNOSEC
- 9999 FORMAT( ' Time for 1,000,000 DAXPY ops = ', G10.3, ' seconds' )
- 9998 FORMAT( ' DAXPY performance rate = ', G10.3, ' mflops ' )
- 9997 FORMAT( ' Including DSECND, time = ', G10.3, ' seconds' )
- 9996 FORMAT( ' Average time for DSECND = ', G10.3, ' milliseconds' )
- 9995 FORMAT( ' Equivalent floating point ops = ', G10.3, ' ops' )
- 9994 FORMAT( ' *** Error: Time for operations was zero' )
- CALL MYSUB(NMAX,X,Y)
- END
- SUBROUTINE MYSUB(N,X,Y)
- INTEGER N
- DOUBLE PRECISION X(N), Y(N)
- RETURN
- END
PURPOSE
Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre