|
a/LibDBlasL3F77.mod |
|
b/LibDBlasL3F77.mod |
|
... |
|
... |
18 |
(* Licence : GNU Lesser General Public License (LGPL) *)
|
18 |
(* Licence : GNU Lesser General Public License (LGPL) *)
|
19 |
(*------------------------------------------------------------------------*)
|
19 |
(*------------------------------------------------------------------------*)
|
20 |
|
20 |
|
21 |
(* $Id: LibDBlasL3F77.mod,v 1.3 2018/09/12 13:20:49 mriedl Exp mriedl $ *)
|
21 |
(* $Id: LibDBlasL3F77.mod,v 1.3 2018/09/12 13:20:49 mriedl Exp mriedl $ *)
|
22 |
|
22 |
|
23 |
FROM LibDBlasL1F77 IMPORT CHAR1,INTEGER4,REAL4,DOUBLEPRECISION,DOUBLECOMPLEX;
|
23 |
FROM LibDBlasL1F77 IMPORT CHAR1,INTEGER4,REAL4,REAL8,COMPLEX16;
|
24 |
FROM LibDBlasLxF77 IMPORT sgemm_,dgemm_,dgemmomp,dgemmomp2,zgemm_;
|
24 |
FROM LibDBlasLxF77 IMPORT sgemm_,dgemm_,dgemmomp,dgemmomp2,zgemm_;
|
25 |
|
25 |
|
26 |
|
26 |
|
27 |
PROCEDURE sgemm( TA : CHAR1;
|
27 |
PROCEDURE sgemm( TA : CHAR1;
|
28 |
TB : CHAR1;
|
28 |
TB : CHAR1;
|
|
... |
|
... |
48 |
END sgemm;
|
48 |
END sgemm;
|
49 |
|
49 |
|
50 |
PROCEDURE dgemm( TA : CHAR1;
|
50 |
PROCEDURE dgemm( TA : CHAR1;
|
51 |
TB : CHAR1;
|
51 |
TB : CHAR1;
|
52 |
M,N,K : INTEGER4;
|
52 |
M,N,K : INTEGER4;
|
53 |
Alpha : DOUBLEPRECISION;
|
53 |
Alpha : REAL8;
|
54 |
VAR A : ARRAY OF ARRAY OF DOUBLEPRECISION;
|
54 |
VAR A : ARRAY OF ARRAY OF REAL8;
|
55 |
lda : INTEGER4;
|
55 |
lda : INTEGER4;
|
56 |
VAR B : ARRAY OF ARRAY OF DOUBLEPRECISION;
|
56 |
VAR B : ARRAY OF ARRAY OF REAL8;
|
57 |
ldb : INTEGER4;
|
57 |
ldb : INTEGER4;
|
58 |
Beta : DOUBLEPRECISION;
|
58 |
Beta : REAL8;
|
59 |
VAR C : ARRAY OF ARRAY OF DOUBLEPRECISION;
|
59 |
VAR C : ARRAY OF ARRAY OF REAL8;
|
60 |
ldc : INTEGER4);
|
60 |
ldc : INTEGER4);
|
61 |
|
61 |
|
62 |
(*---------------------------------------------------------------*)
|
62 |
(*---------------------------------------------------------------*)
|
63 |
(* Aufruf der Fortran Version von BLAS3 subroutine dgemm *)
|
63 |
(* Aufruf der Fortran Version von BLAS3 subroutine dgemm *)
|
64 |
(*---------------------------------------------------------------*)
|
64 |
(*---------------------------------------------------------------*)
|
|
... |
|
... |
71 |
END dgemm;
|
71 |
END dgemm;
|
72 |
|
72 |
|
73 |
PROCEDURE dgemmOMP( TA : CHAR1;
|
73 |
PROCEDURE dgemmOMP( TA : CHAR1;
|
74 |
TB : CHAR1;
|
74 |
TB : CHAR1;
|
75 |
M,N,K : INTEGER4;
|
75 |
M,N,K : INTEGER4;
|
76 |
Alpha : DOUBLEPRECISION;
|
76 |
Alpha : REAL8;
|
77 |
VAR A : ARRAY OF ARRAY OF DOUBLEPRECISION;
|
77 |
VAR A : ARRAY OF ARRAY OF REAL8;
|
78 |
lda : INTEGER4;
|
78 |
lda : INTEGER4;
|
79 |
VAR B : ARRAY OF ARRAY OF DOUBLEPRECISION;
|
79 |
VAR B : ARRAY OF ARRAY OF REAL8;
|
80 |
ldb : INTEGER4;
|
80 |
ldb : INTEGER4;
|
81 |
Beta : DOUBLEPRECISION;
|
81 |
Beta : REAL8;
|
82 |
VAR C : ARRAY OF ARRAY OF DOUBLEPRECISION;
|
82 |
VAR C : ARRAY OF ARRAY OF REAL8;
|
83 |
ldc : INTEGER4);
|
83 |
ldc : INTEGER4);
|
84 |
|
84 |
|
85 |
(*---------------------------------------------------------------*)
|
85 |
(*---------------------------------------------------------------*)
|
86 |
(* Aufruf der Fortran Version von BLAS3 subroutine dgemm *)
|
86 |
(* Aufruf der Fortran Version von BLAS3 subroutine dgemm *)
|
87 |
(*---------------------------------------------------------------*)
|
87 |
(*---------------------------------------------------------------*)
|
|
... |
|
... |
97 |
END dgemmOMP;
|
97 |
END dgemmOMP;
|
98 |
|
98 |
|
99 |
PROCEDURE zgemm( TA : CHAR1;
|
99 |
PROCEDURE zgemm( TA : CHAR1;
|
100 |
TB : CHAR1;
|
100 |
TB : CHAR1;
|
101 |
M,N,K : INTEGER4;
|
101 |
M,N,K : INTEGER4;
|
102 |
Alpha : DOUBLECOMPLEX;
|
102 |
Alpha : COMPLEX16;
|
103 |
VAR A : ARRAY OF ARRAY OF DOUBLECOMPLEX;
|
103 |
VAR A : ARRAY OF ARRAY OF COMPLEX16;
|
104 |
lda : INTEGER4;
|
104 |
lda : INTEGER4;
|
105 |
VAR B : ARRAY OF ARRAY OF DOUBLECOMPLEX;
|
105 |
VAR B : ARRAY OF ARRAY OF COMPLEX16;
|
106 |
ldb : INTEGER4;
|
106 |
ldb : INTEGER4;
|
107 |
Beta : DOUBLECOMPLEX;
|
107 |
Beta : COMPLEX16;
|
108 |
VAR C : ARRAY OF ARRAY OF DOUBLECOMPLEX;
|
108 |
VAR C : ARRAY OF ARRAY OF COMPLEX16;
|
109 |
ldc : INTEGER4);
|
109 |
ldc : INTEGER4);
|
110 |
|
110 |
|
111 |
(*---------------------------------------------------------------*)
|
111 |
(*---------------------------------------------------------------*)
|
112 |
(* Aufruf der Fortran Version von BLAS3 subroutine zgemm *)
|
112 |
(* Aufruf der Fortran Version von BLAS3 subroutine zgemm *)
|
113 |
(*---------------------------------------------------------------*)
|
113 |
(*---------------------------------------------------------------*)
|