benchmark-fortran-c

Benchmark code for Fortran and C GEMV test kernels
git clone https://git.0xfab.ch/benchmark-fortran-c.git
Log | Files | Refs

sgemv.f (509B)


      1       SUBROUTINE SGEMV(A,X,Y,N)
      2       INTEGER(4) N,I,J
      3       REAL(4) A(N,*),X(*),Y(*)
      4       REAL(4) TEMP
      5 #ifdef TRANSPOSE
      6 ! Form  y := A^T*x + y.
      7       DO 100 J = 1,N
      8       TEMP = 0.0
      9       DO 90 I = 1,N
     10       TEMP = TEMP + A(I,J)*X(I)
     11    90             CONTINUE
     12       Y(J) = Y(J) + TEMP
     13   100         CONTINUE
     14 #else
     15 ! Form  y := A*x + y.
     16       DO 60 J = 1,N
     17       TEMP = X(J)
     18       DO 50 I = 1,N
     19       Y(I) = Y(I) + TEMP*A(I,J)
     20    50             CONTINUE
     21    60         CONTINUE
     22 #endif
     23       RETURN
     24       END