MAGMA  1.2.0
MatrixAlgebraonGPUandMulticoreArchitectures
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
subs.py
Go to the documentation of this file.
1 subs = {
2  'all' : [ ## Special key: Changes are applied to all applicable conversions automatically
3  [None,None]
4  ],
5  'mixed' : [
6  ['zc','ds'],
7  ('ZC','DS'),
8  ('zc','ds'),
9  ('PLASMA_Complex64_t','double'),
10  ('PLASMA_Complex32_t','float'),
11  ('PlasmaComplexDouble','PlasmaRealDouble'),
12  ('PlasmaComplexFloat','PlasmaRealFloat'),
13  ('zlange','dlange'),
14  ('zlag2c','dlag2s'),
15  ('clag2z','slag2d'),
16  ('zlacpy','dlacpy'),
17  ('zgemm','dgemm'),
18  ('zherk','dsyrk'),
19  ('zher2k','dsyr2k'),
20  ('zlansy','dlansy'),
21  ('zaxpy','daxpy'),
22  ('pzgetrf','pdgetrf'),
23  ('pcgetrf','psgetrf'),
24  ('ztrsm','dtrsm'),
25  ('ctrsm','strsm'),
26  ('CBLAS_SADDR',''),
27  ('zlarnv','dlarnv'),
28  ('zgesv','dgesv'),
29  ('zhemm','dsymm'),
30  ('zlanhe','dlansy'),
31  ('zlaghe','dlagsy'),
32  ('ztrmm','dtrmm'),
33  ('ctrmm','strmm'),
34  ('Conj',''),
35  ('zpotrf','dpotrf'),
36  ('cpotrf','spotrf'),
37  ('PLASMA_Alloc_Workspace_zgels','PLASMA_Alloc_Workspace_dgels'),
38  ('plasma_pc', 'plasma_ps'),
39  ('plasma_pz', 'plasma_pd'),
40  ('plasma_coop', 'plasma_soop'),
41  ('plasma_zoop', 'plasma_doop'),
42  ('plasma_cip', 'plasma_sip'),
43  ('plasma_zip', 'plasma_dip'),
44  ('plasma_cdesc', 'plasma_sdesc'),
45  ('plasma_zdesc', 'plasma_ddesc'),
46  ('unmqr','ormqr'),
47  ('unmlq','ormlq'),
48  ],
49  'normal' : [ ## Dictionary is keyed on substitution type
50  ['s','d','c','z'], ## Special Line Indicating type columns
51  ('float', 'double', 'cuFloatComplex', 'cuDoubleComplex' ),
52  ('#define PRECISION_s', '#define PRECISION_d', '#define PRECISION_c', '#define PRECISION_z'),
53  ('#undef PRECISION_s', '#undef PRECISION_d', '#undef PRECISION_c', '#undef PRECISION_z' ),
54  ('#define REAL', '#define REAL', '#define COMPLEX', '#define COMPLEX' ),
55  ('#undef COMPLEX', '#undef COMPLEX', '#undef REAL', '#undef REAL' ),
56  ('#define SINGLE', '#define DOUBLE', '#define SINGLE', '#define DOUBLE' ),
57  ('#undef DOUBLE', '#undef SINGLE', '#undef DOUBLE', '#undef SINGLE' ),
58  ('Workspace_s', 'Workspace_d', 'Workspace_c', 'Workspace_z' ),
59  ('workspace_s', 'workspace_d', 'workspace_c', 'workspace_z' ),
60  ('cublasS', 'cublasD', 'cublasC', 'cublasZ' ),
61  ('codelet_s', 'codelet_d', 'codelet_c', 'codelet_z' ),
62  ('CODELETS_S', 'CODELETS_D', 'CODELETS_C', 'CODELETS_Z' ),
63  ('SCODELETS', 'DCODELETS', 'CCODELETS', 'ZCODELETS' ),
64  ('wrapper_s', 'wrapper_d', 'wrapper_c', 'wrapper_z' ),
65  ('WRAPPER_S', 'WRAPPER_D', 'WRAPPER_C', 'WRAPPER_Z' ),
66  ('morse_s', 'morse_d', 'morse_c', 'morse_z' ),
67  ('MORSE_S', 'MORSE_D', 'MORSE_C', 'MORSE_Z' ),
68  ('morse_ps', 'morse_pd', 'morse_pc', 'morse_pz' ),
69  ('magma_starpu_s', 'magma_starpu_d', 'magma_starpu_c', 'magma_starpu_z' ),
70  ('MAGMA_S', 'MAGMA_D', 'MAGMA_C', 'MAGMA_Z' ),
71  ('MAGMA_s', 'MAGMA_d', 'MAGMA_c', 'MAGMA_z' ),
72  ('magma_s', 'magma_d', 'magma_c', 'magma_z' ),
73  ('magma_ps', 'magma_pd', 'magma_pc', 'magma_pz' ),
74  ('profile_s', 'profile_d', 'profile_c', 'profile_z' ),
75  ('PROFILE_S', 'PROFILE_D', 'PROFILE_C', 'PROFILE_Z' ),
76  ('cl_s', 'cl_d', 'cl_c', 'cl_z' ),
77  ('cl_ps', 'cl_pd', 'cl_pc', 'cl_pz' ),
78  ('ipt_s','ipt_d','ipt_c','ipt_z'),
79  ('cblas_sasum','cblas_dasum','cblas_scasum','cblas_dzasum'),
80  ('CORE_sasum','CORE_dasum','CORE_scasum','CORE_dzasum'),
81  ('core_sasum','core_dasum','core_scasum','core_dzasum'),
82  ('coreblas_s','coreblas_d','coreblas_c','coreblas_z'),
83  ('LAPACKE_s','LAPACKE_d','LAPACKE_c','LAPACKE_z'),
84  ('slag2d','dlag2s','clag2z','zlag2c'),
85  ('saxpy','daxpy','caxpy','zaxpy'),
86  ('ssymm','dsymm','chemm','zhemm'),
87  ('SSYMM','DSYMM','CHEMM','ZHEMM'),
88  ('ssyrk','dsyrk','cherk','zherk'),
89  ('SSYRK','DSYRK','CHERK','ZHERK'),
90  ('ssyr2k','dsyr2k','cher2k','zher2k'),
91  ('SSYR2K','DSYR2K','CHER2K','ZHER2K'),
92  ('sgesv','dgesv','cgesv','zgesv'),
93  ('SUNGESV','SUNGESV','CUNGESV','CUNGESV'),
94  ('SGESV','SGESV','CGESV','CGESV'),
95  ('SGESV','DGESV','CGESV','ZGESV'),
96  ('sgels','dgels','cgels','zgels'),
97  ('SGELS','DGELS','CGELS','ZGELS'),
98  ('sgemm','dgemm','cgemm','zgemm'),
99  ('SGEMM','DGEMM','CGEMM','ZGEMM'),
100  ('sposv','dposv','cposv','zposv'),
101  ('SPOSV','SPOSV','CPOSV','CPOSV'),
102  ('SPOSV','DPOSV','CPOSV','ZPOSV'),
103  ('ssymm','dsymm','csymm','zsymm'),
104  ('SSYMM','DSYMM','CSYMM','ZSYMM'),
105  ('ssyrk','dsyrk','csyrk','zsyrk'),
106  ('SSYRK','DSYRK','CSYRK','ZSYRK'),
107  ('ssyr2k','dsyr2k','csyr2k','zsyr2k'),
108  ('SSYR2K','DSYR2K','CSYR2K','ZSYR2K'),
109  ('strmm','dtrmm','ctrmm','ztrmm'),
110  ('STRMM','DTRMM','CTRMM','ZTRMM'),
111  ('strsm','dtrsm','ctrsm','ztrsm'),
112  ('STRSM','DTRSM','CTRSM','ZTRSM'),
113  ('sgelq2','dgelq2','cgelq2','zgelq2'),
114  ('sgelqf','dgelqf','cgelqf','zgelqf'),
115  ('sgelqfrh','dgelqfrh','cgelqfrh','zgelqfrh'),
116  ('SGELQF','DGELQF','CGELQF','ZGELQF'),
117  ('sgelqs','dgelqs','cgelqs','zgelqs'),
118  ('SGELQS','DGELQS','CGELQS','ZGELQS'),
119  ('sgeqr2','dgeqr2','cgeqr2','zgeqr2'),
120  ('sgeqrf','dgeqrf','cgeqrf','zgeqrf'),
121  ('sgeqrfrh','dgeqrfrh','cgeqrfrh','zgeqrfrh'),
122  ('SGEQRF','DGEQRF','CGEQRF','ZGEQRF'),
123  ('sgeqrs','dgeqrs','cgeqrs','zgeqrs'),
124  ('SGEQRS','DGEQRS','CGEQRS','ZGEQRS'),
125  ('sgetf2','dgetf2','cgetf2','zgetf2'),
126  ('sgetrl','dgetrl','cgetrl','zgetrl'),
127  ('sgetrf','dgetrf','cgetrf','zgetrf'),
128  ('SGETRF','DGETRF','CGETRF','ZGETRF'),
129  ('sgessm','dgessm','cgessm','zgessm'),
130  ('sgeqrt','dgeqrt','cgeqrt','zgeqrt'),
131  ('sssssm','dssssm','cssssm','zssssm'),
132  ('stsmqr','dtsmqr','ctsmqr','ztsmqr'),
133  ('stsqrt','dtsqrt','ctsqrt','ztsqrt'),
134  ('ststrf','dtstrf','ctstrf','ztstrf'),
135  ('sgetrs','dgetrs','cgetrs','zgetrs'),
136  ('SGETRS','DGETRS','CGETRS','ZGETRS'),
137  ('slacgv','dlacgv','clacgv','zlacgv'),
138  ('slacpy','dlacpy','clacpy','zlacpy'),
139  ('slagsy','dlagsy','claghe','zlaghe'),
140  ('slagsy','dlagsy','clagsy','zlagsy'),
141  ('SLANGE','DLANGE','CLANGE','ZLANGE'),
142  ('SLANSY','DLANSY','CLANHE','ZLANHE'),
143  ('SLANSY','DLANSY','CLANSY','ZLANSY'),
144  ('SLANTR','DLANTR','CLANTR','ZLANTR'),
145  ('slange','dlange','clange','zlange'),
146  ('slansy','dlansy','clanhe','zlanhe'),
147  ('slansy','dlansy','clansy','zlansy'),
148  ('slantr','dlantr','clantr','zlantr'),
149  ('slarfb','dlarfb','clarfb','zlarfb'),
150  ('slarfg','dlarfg','clarfg','zlarfg'),
151  ('slarft','dlarft','clarft','zlarft'),
152  ('slarnv','dlarnv','clarnv','zlarnv'),
153  ('slaswp','dlaswp','claswp','zlaswp'),
154  ('splgsy','dplgsy','cplghe','zplghe'),
155  ('spotrf','dpotrf','cpotrf','zpotrf'),
156  ('spotrf','dpotrf','cpotrf','zpotrf'),
157  ('SPOTRF','DPOTRF','CPOTRF','ZPOTRF'),
158  ('spotrs','dpotrs','cpotrs','zpotrs'),
159  ('SPOTRS','DPOTRS','CPOTRS','ZPOTRS'),
160  ('sorglq','dorglq','cunglq','zunglq'),
161  ('sorglqrh','dorglqrh','cunglqrh','zunglqrh'),
162  ('SORGLQ','DORGLQ','CUNGLQ','ZUNGLQ'),
163  ('sorgqr','dorgqr','cungqr','zungqr'),
164  ('sorgqrrh','dorgqrrh','cungqrrh','zungqrrh'),
165  ('SORGQR','DORGQR','CUNGQR','ZUNGQR'),
166  ('sormlq','dormlq','cunmlq','zunmlq'),
167  ('sormlqrh','dormlqrh','cunmlqrh','zunmlqrh'),
168  ('SORMLQ','DORMLQ','CUNMLQ','ZUNMLQ'),
169  ('sormqr','dormqr','cunmqr','zunmqr'),
170  ('sormqrrh','dormqrrh','cunmqrrh','zunmqrrh'),
171  ('SORMQR','DORMQR','CUNMQR','ZUNMQR'),
172  ('slamch','dlamch','slamch','dlamch'),
173  ('slarnv','dlarnv','slarnv','dlarnv'),
174  ('slauum','dlauum','clauum','zlauum'),
175  ('spotri','dpotri','cpotri','zpotri'),
176  ('strtri','dtrtri','ctrtri','ztrtri'),
177  ('sshift','dshift','cshift','zshift'),
178  ('sgetmo','dgetmo','cgetmo','zgetmo'),
179  ('sgetmi','dgetmi','cgetmi','zgetmi'),
180  ('SGETMI','DGETMI','CGETMI','ZGETMI'),
181  ('sgecfi','dgecfi','cgecfi','zgecfi'),
182  ('SGECFI','DGECFI','CGECFI','ZGECFI'),
183  ('spack','dpack','cpack','zpack'),
184  ('strsmpl','dtrsmpl','ctrsmpl','ztrsmpl'),
185  ('STRSMPL','DTRSMPL','CTRSMPL','ZTRSMPL'),
186  ('splgsy','dplgsy','cplghe','zplghe'),
187  ('splgsy','dplgsy','cplgsy','zplgsy'),
188  ('splrnt','dplrnt','cplrnt','zplrnt'),
189  ('sprofiling','dprofiling','cprofiling','zprofiling'),
190  ('slocality','dlocality','clocality','zlocality'),
191  ('\*\*T','\*\*T','\*\*H','\*\*H'),
192  ('BLAS_s','BLAS_d','BLAS_s','BLAS_d'),
193  ('BLAS_s','BLAS_d','BLAS_c','BLAS_z'),
194  ('fabsf','fabs','cabsf','cabs'),
195  ('imagf','imag','imagf','imag'),
196  ('cblas_is','cblas_id','cblas_ic','cblas_iz'),
197  ('cblas_s','cblas_d','cblas_c','cblas_z'),
198  ('','','CBLAS_SADDR','CBLAS_SADDR'),
199  ('CblasTrans','CblasTrans','CblasConjTrans','CblasConjTrans'),
200  ('REAL','DOUBLE_PRECISION','COMPLEX','COMPLEX_16'),
201  ('','','conjf','conj'),
202  ('CORE_S','CORE_D','CORE_C','CORE_Z'),
203  ('CORE_s','CORE_d','CORE_c','CORE_z'),
204  ('CORE_s','CORE_d','CORE_s','CORE_d'),
205  ('core_s','core_d','core_c','core_z'),
206  ('float','double','float _Complex','double _Complex'),
207  ('float','double','float','double'),
208  ('example_s','example_d','example_c','example_z'),
209  ('lapack_s','lapack_d','lapack_c','lapack_z'),
210  ('lapack_slamch','lapack_dlamch','lapack_slamch','lapack_dlamch'),
211  ('float','double','PLASMA_Complex32_t','PLASMA_Complex64_t'),
212  ('plasma_ps','plasma_pd','plasma_pc','plasma_pz'),
213  ('float','double','PLASMA_voidComplex32_t','PLASMA_voidComplex64_t'),
214  ('PLASMA_s','PLASMA_d','PLASMA_c','PLASMA_z'),
215  ('PLASMA_S','PLASMA_D','PLASMA_C','PLASMA_Z'),
216  ('plasma_s','plasma_d','plasma_c','plasma_z'),
217  ('control_s','control_d','control_c','control_z'),
218  ('compute_s','compute_d','compute_c','compute_z'),
219  ('PLASMA_sor','PLASMA_dor','PLASMA_cun','PLASMA_zun'),
220  ('PlasmaRealFloat','PlasmaRealDouble','PlasmaComplexFloat','PlasmaComplexDouble'),
221  ('PlasmaTrans','PlasmaTrans','PlasmaConjTrans','PlasmaConjTrans'),
222  ('testing_ds','testing_ds','testing_zc','testing_zc'),
223  ('time_s','time_d','time_c','time_z'),
224  ('testing_s','testing_d','testing_c','testing_z'),
225  ('TESTING_S','TESTING_D','TESTING_C','TESTING_Z'),
226  ('stesting','dtesting','ctesting','ztesting'),
227  ('SAUXILIARY','DAUXILIARY','CAUXILIARY','ZAUXILIARY'),
228  ('sauxiliary','dauxiliary','cauxiliary','zauxiliary'),
229  ('scheck','dcheck','ccheck','zcheck'),
230  ('ger','ger','gerc','gerc'),
231  ('ger','ger','geru','geru'),
232  ('symm','symm','hemm','hemm'),
233  ('syrk','syrk','herk','herk'),
234  ('syr2k','syr2k','her2k','her2k'),
235  ('lansy','lansy','lanhe','lanhe'),
236  ('plgsy','plgsy','plghe','plghe'),
237  ('stile','dtile','ctile','ztile'),
238  ('ormqr','ormqr','unmqr','unmqr'),
239  ],
240  'tracing' : [
241  ['plain','tau'],
242  ('(\w+\*?)\s+(\w+)\s*\(([a-z* ,A-Z_0-9]*)\)\s*{\s+(.*)\s*#pragma tracing_start\s+(.*)\s+#pragma tracing_end\s+(.*)\s+}',r'\1 \2(\3){\n\4tau("\2");\5tau();\6}'),
243  ('\.c','.c.tau'),
244  ],
245 };