PLASMA  2.4.6
 All Data Structures Functions Groups
plasmaf.h
1 !**
2 !
3 ! @file plasmaf.h
4 !
5 ! PLASMA FORTRAN header
6 ! PLASMA is a software package provided by Univ. of Tennessee,
7 ! Univ. of California Berkeley and Univ. of Colorado Denver
8 !
9 ! @version 2.5.0
10 ! @author Bilel Hadri
11 ! @author Mathieu Faverge
12 ! @date 2010-11-15
13 !
14 !**
15 
16 !********************************************************************
17 ! PLASMA constants - precisions
18 !
19  integer PlasmaByte, PlasmaInteger, PlasmaRealFloat
20  integer PlasmaRealDouble, PlasmaComplexFloat, PlasmaComplexDouble
21  parameter ( PlasmaByte = 0 )
22  parameter ( PlasmaInteger = 1 )
23  parameter ( PlasmaRealFloat = 2 )
24  parameter ( PlasmaRealDouble = 3 )
25  parameter ( PlasmaComplexFloat = 4 )
26  parameter ( PlasmaComplexDouble = 5 )
27 
28 !********************************************************************
29 ! PLASMA constants - CBLAS & LAPACK
30 !
31  integer PlasmaRM, PlasmaCM, PlasmaCCRB
32  integer PlasmaCRRB, PlasmaRCRB, PlasmaRRRB
33  parameter ( PlasmaRM = 101 )
34  parameter ( PlasmaCM = 102 )
35  parameter ( PlasmaCCRB = 103 )
36  parameter ( PlasmaCRRB = 104 )
37  parameter ( PlasmaRCRB = 105 )
38  parameter ( PlasmaRRRB = 106 )
39 
40  integer PlasmaNoTrans, PlasmaTrans, PlasmaConjTrans
41  parameter ( PlasmaNoTrans = 111 )
42  parameter ( PlasmaTrans = 112 )
43  parameter ( PlasmaConjTrans = 113 )
44 
45  integer PlasmaUpper, PlasmaLower
46  integer PlasmaUpperLower
47  parameter ( PlasmaUpper = 121 )
48  parameter ( PlasmaLower = 122 )
49  parameter ( PlasmaUpperLower = 123 )
50 
51  integer PlasmaNonUnit,PlasmaUnit
52  parameter ( PlasmaNonUnit = 131 )
53  parameter ( PlasmaUnit = 132 )
54 
55  integer PlasmaLeft,PlasmaRight
56  parameter ( PlasmaLeft = 141 )
57  parameter ( PlasmaRight = 142 )
58 
59  integer PlasmaOneNorm, PlasmaRealOneNorm
60  integer PlasmaTwoNorm, PlasmaFrobeniusNorm
61  integer PlasmaInfNorm, PlasmaRealInfNorm
62  integer PlasmaMaxNorm, PlasmaRealMaxNorm
63  parameter ( PlasmaOneNorm = 171 )
64  parameter ( PlasmaRealOneNorm = 172 )
65  parameter ( PlasmaTwoNorm = 173 )
66  parameter ( PlasmaFrobeniusNorm = 174 )
67  parameter ( PlasmaInfNorm = 175 )
68  parameter ( PlasmaRealInfNorm = 176 )
69  parameter ( PlasmaMaxNorm = 177 )
70  parameter ( PlasmaRealMaxNorm = 178 )
71 
72  integer PlasmaDistUniform
73  integer PlasmaDistSymmetric
74  integer PlasmaDistNormal
75  parameter ( PlasmaDistUniform = 201 )
76  parameter ( PlasmaDistSymmetric = 202 )
77  parameter ( PlasmaDistNormal = 203 )
78 
79  integer PlasmaHermGeev
80  integer PlasmaHermPoev
81  integer PlasmaNonsymPosv
82  integer PlasmaSymPosv
83  parameter ( PlasmaHermGeev = 241 )
84  parameter ( PlasmaHermPoev = 242 )
85  parameter ( PlasmaNonsymPosv = 243 )
86  parameter ( PlasmaSymPosv = 244 )
87 
88  integer PlasmaNoPacking
89  integer PlasmaPackSubdiag
90  integer PlasmaPackSupdiag
91  integer PlasmaPackColumn
92  integer PlasmaPackLowerBand
93  integer PlasmaPackRow
94  integer PlasmaPackUpeprBand
95  integer PlasmaPackAll
96  parameter ( PlasmaNoPacking = 291 )
97  parameter ( PlasmaPackSubdiag = 292 )
98  parameter ( PlasmaPackSupdiag = 293 )
99  parameter ( PlasmaPackColumn = 294 )
100  parameter ( PlasmaPackRow = 295 )
101  parameter ( PlasmaPackLowerBand = 296 )
102  parameter ( PlasmaPackUpeprBand = 297 )
103  parameter ( PlasmaPackAll = 298 )
104 
105  integer PlasmaNoVec,PlasmaVec,PlasmaIvec
106  parameter ( PlasmaNoVec = 301 )
107  parameter ( PlasmaVec = 302 )
108  parameter ( PlasmaIvec = 303 )
109 
110  integer PlasmaForward, PlasmaBackward
111  parameter ( PlasmaForward = 391 )
112  parameter ( PlasmaBackward = 392 )
113 
114  integer PlasmaColumnwise,PlasmaRowwise
115  parameter ( PlasmaColumnwise = 401 )
116  parameter ( PlasmaRowwise = 402 )
117 
118 !********************************************************************
119 ! PLASMA constants - boolean
120 !
121  integer PLASMA_FALSE, PLASMA_TRUE
122  parameter ( PLASMA_FALSE = 0 )
123  parameter ( PLASMA_TRUE = 1 )
124 
125 !********************************************************************
126 ! State machine switches
127 !
128  integer PLASMA_WARNINGS, PLASMA_ERRORS, PLASMA_AUTOTUNING
129  integer PLASMA_DAG
130  parameter ( PLASMA_WARNINGS = 1 )
131  parameter ( PLASMA_ERRORS = 2 )
132  parameter ( PLASMA_AUTOTUNING = 3 )
133  parameter ( PLASMA_DAG = 4 )
134 
135 !********************************************************************
136 ! PLASMA constants - configuration parameters
137 !
138  integer PLASMA_CONCURRENCY, PLASMA_TILE_SIZE
139  integer PLASMA_INNER_BLOCK_SIZE, PLASMA_SCHEDULING_MODE
140  integer PLASMA_HOUSEHOLDER_MODE, PLASMA_HOUSEHOLDER_SIZE
141  integer PLASMA_TRANSLATION_MODE
142  parameter ( PLASMA_CONCURRENCY = 1 )
143  parameter ( PLASMA_TILE_SIZE = 2 )
144  parameter ( PLASMA_INNER_BLOCK_SIZE = 3 )
145  parameter ( PLASMA_SCHEDULING_MODE = 4 )
146  parameter ( PLASMA_HOUSEHOLDER_MODE = 5 )
147  parameter ( PLASMA_HOUSEHOLDER_SIZE = 6 )
148  parameter ( PLASMA_TRANSLATION_MODE = 7 )
149 
150 !********************************************************************
151 ! PLASMA constants - scheduling mode
152 !
153  integer PLASMA_STATIC_SCHEDULING, PLASMA_DYNAMIC_SCHEDULING
154  parameter ( PLASMA_STATIC_SCHEDULING = 1 )
155  parameter ( PLASMA_DYNAMIC_SCHEDULING = 2 )
156 
157 !********************************************************************
158 ! PLASMA constants - householder mode
159 !
160  integer PLASMA_FLAT_HOUSEHOLDER, PLASMA_TREE_HOUSEHOLDER
161  parameter ( PLASMA_FLAT_HOUSEHOLDER = 1 )
162  parameter ( PLASMA_TREE_HOUSEHOLDER = 2 )
163 
164 !*********************************************************************
165 ! PLASMA constants - translation mode
166 !
167  integer PLASMA_INPLACE, PLASMA_OUTOFPLACE
168  parameter ( PLASMA_INPLACE = 1 )
169  parameter ( PLASMA_OUTOFPLACE = 2 )
170 
171 !********************************************************************
172 ! PLASMA constants - success & error codes
173 !
174  integer PLASMA_SUCCESS, PLASMA_ERR_NOT_INITIALIZED
175  integer PLASMA_ERR_REINITIALIZED, PLASMA_ERR_NOT_SUPPORTED
176  integer PLASMA_ERR_ILLEGAL_VALUE, PLASMA_ERR_NOT_FOUND
177  integer PLASMA_ERR_OUT_OF_MEMORY, PLASMA_ERR_INTERNAL_LIMIT
178  integer PLASMA_ERR_UNALLOCATED, PLASMA_ERR_FILESYSTEM
179  integer PLASMA_ERR_UNEXPECTED, PLASMA_ERR_SEQUENCE_FLUSHED
180  parameter ( PLASMA_SUCCESS = 0 )
181  parameter ( PLASMA_ERR_NOT_INITIALIZED = -101 )
182  parameter ( PLASMA_ERR_REINITIALIZED = -102 )
183  parameter ( PLASMA_ERR_NOT_SUPPORTED = -103 )
184  parameter ( PLASMA_ERR_ILLEGAL_VALUE = -104 )
185  parameter ( PLASMA_ERR_NOT_FOUND = -105 )
186  parameter ( PLASMA_ERR_OUT_OF_MEMORY = -106 )
187  parameter ( PLASMA_ERR_INTERNAL_LIMIT = -107 )
188  parameter ( PLASMA_ERR_UNALLOCATED = -108 )
189  parameter ( PLASMA_ERR_FILESYSTEM = -109 )
190  parameter ( PLASMA_ERR_UNEXPECTED = -110 )
191  parameter ( PLASMA_ERR_SEQUENCE_FLUSHED= -111 )