libflame revision_anchor
|
00001 /* 00002 libflame 00003 An object-based infrastructure for developing high-performance 00004 dense linear algebra libraries. 00005 00006 Copyright (C) 2011, The University of Texas 00007 00008 libflame is free software; you can redistribute it and/or modify 00009 it under the terms of the GNU Lesser General Public License as 00010 published by the Free Software Foundation; either version 2.1 of 00011 the License, or (at your option) any later version. 00012 00013 libflame is distributed in the hope that it will be useful, but 00014 WITHOUT ANY WARRANTY; without even the implied warranty of 00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00016 Lesser General Public License for more details. 00017 00018 You should have received a copy of the GNU Lesser General Public 00019 License along with libflame; if you did not receive a copy, see 00020 http://www.gnu.org/licenses/. 00021 00022 For more information, please contact us at flame@cs.utexas.edu or 00023 send mail to: 00024 00025 Field G. Van Zee and/or 00026 Robert A. van de Geijn 00027 The University of Texas at Austin 00028 Department of Computer Sciences 00029 1 University Station C0500 00030 Austin TX 78712 00031 */ 00032 00033 #ifndef FLASH_QUEUE_MACRO_DEFS_H 00034 #define FLASH_QUEUE_MACRO_DEFS_H 00035 00036 00037 #ifdef FLA_ENABLE_SUPERMATRIX 00038 00039 00040 #define FLASH_OBJ_PTR_ID( A ) ( A ).base->id 00041 00042 // FLASH_Verbose 00043 #define FLASH_QUEUE_VERBOSE_NONE 0 00044 #define FLASH_QUEUE_VERBOSE_READABLE 1 00045 #define FLASH_QUEUE_VERBOSE_GRAPHVIZ 2 00046 00047 // FLASH_Data_aff 00048 #define FLASH_QUEUE_AFFINITY_NONE 0 00049 #define FLASH_QUEUE_AFFINITY_2D_BLOCK_CYCLIC 1 00050 #define FLASH_QUEUE_AFFINITY_1D_ROW_BLOCK_CYCLIC 2 00051 #define FLASH_QUEUE_AFFINITY_1D_COLUMN_BLOCK_CYCLIC 3 00052 #define FLASH_QUEUE_AFFINITY_ROUND_ROBIN 4 00053 00054 /* 00055 Reminder to create a macro to enqueue when SuperMatrix is configured, and 00056 also to create a macro for when it is not below to return an error code. 00057 */ 00058 00059 // LAPACK-level 00060 00061 #define ENQUEUE_FLASH_LU_piv_macro( A, p, cntl ) \ 00062 FLASH_Queue_push( (void *) FLA_LU_piv_macro_task, \ 00063 (void *) cntl, \ 00064 "LU ", \ 00065 FALSE, \ 00066 0, 0, 0, 2, \ 00067 A, p ) 00068 00069 #define ENQUEUE_FLASH_Apply_pivots_macro( side, trans, p, A, cntl ) \ 00070 FLASH_Queue_push( (void *) FLA_Apply_pivots_macro_task, \ 00071 (void *) cntl, \ 00072 "Pivot", \ 00073 FALSE, \ 00074 2, 0, 1, 1, \ 00075 side, trans, \ 00076 p, A ) 00077 00078 #define ENQUEUE_FLASH_LU_piv( A, p, cntl ) \ 00079 FLASH_Queue_push( (void *) FLA_LU_piv_task, \ 00080 (void *) cntl, \ 00081 "LU ", \ 00082 FALSE, \ 00083 0, 1, 0, 1, \ 00084 p, A ) 00085 00086 #define ENQUEUE_FLASH_LU_piv_copy( A, p, U, cntl ) \ 00087 FLASH_Queue_push( (void *) FLA_LU_piv_copy_task, \ 00088 (void *) cntl, \ 00089 "LU ", \ 00090 FALSE, \ 00091 0, 1, 0, 2, \ 00092 p, A, U ) 00093 00094 #define ENQUEUE_FLASH_Trsm_piv( A, C, p, cntl ) \ 00095 FLASH_Queue_push( (void *) FLA_Trsm_piv_task, \ 00096 (void *) cntl, \ 00097 "Trsm ", \ 00098 FALSE, \ 00099 0, 1, 1, 1, \ 00100 p, A, C ) 00101 00102 #define ENQUEUE_FLASH_SA_LU( U, D, p, L, nb_alg, cntl ) \ 00103 FLASH_Queue_push( (void *) FLA_SA_LU_task, \ 00104 (void *) cntl, \ 00105 "SA_LU", \ 00106 FALSE, \ 00107 1, 2, 0, 2, \ 00108 nb_alg, \ 00109 p, L, D, U ) 00110 00111 #define ENQUEUE_FLASH_SA_FS( L, D, p, C, E, nb_alg, cntl ) \ 00112 FLASH_Queue_push( (void *) FLA_SA_FS_task, \ 00113 (void *) cntl, \ 00114 "SA_FS", \ 00115 FALSE, \ 00116 1, 2, 1, 2, \ 00117 nb_alg, \ 00118 L, p, D, E, C ) 00119 00120 #define ENQUEUE_FLASH_LU_nopiv( A, cntl ) \ 00121 FLASH_Queue_push( (void *) FLA_LU_nopiv_task, \ 00122 (void *) cntl, \ 00123 "LU ", \ 00124 FALSE, \ 00125 0, 0, 0, 1, \ 00126 A ) 00127 00128 #define ENQUEUE_FLASH_Trinv( uplo, diag, A, cntl ) \ 00129 FLASH_Queue_push( (void *) FLA_Trinv_task, \ 00130 (void *) cntl, \ 00131 "Trinv", \ 00132 FALSE, \ 00133 2, 0, 0, 1, \ 00134 uplo, diag, \ 00135 A ) 00136 00137 #define ENQUEUE_FLASH_Ttmm( uplo, A, cntl ) \ 00138 FLASH_Queue_push( (void *) FLA_Ttmm_task, \ 00139 (void *) cntl, \ 00140 "Ttmm ", \ 00141 FALSE, \ 00142 1, 0, 0, 1, \ 00143 uplo, \ 00144 A ) 00145 00146 #define ENQUEUE_FLASH_Chol( uplo, A, cntl ) \ 00147 FLASH_Queue_push( (void *) FLA_Chol_task, \ 00148 (void *) cntl, \ 00149 "Chol ", \ 00150 FALSE, \ 00151 1, 0, 0, 1, \ 00152 uplo, \ 00153 A ) 00154 00155 #define ENQUEUE_FLASH_Sylv( transA, transB, isgn, A, B, C, scale, cntl ) \ 00156 FLASH_Queue_push( (void *) FLA_Sylv_task, \ 00157 (void *) cntl, \ 00158 "Sylv ", \ 00159 FALSE, \ 00160 2, 2, 2, 1, \ 00161 transA, transB, \ 00162 isgn, scale, \ 00163 A, B, C ) 00164 00165 #define ENQUEUE_FLASH_Lyap( trans, isgn, A, C, scale, cntl ) \ 00166 FLASH_Queue_push( (void *) FLA_Lyap_task, \ 00167 (void *) cntl, \ 00168 "Lyap ", \ 00169 FALSE, \ 00170 1, 2, 1, 1, \ 00171 trans, \ 00172 isgn, scale, \ 00173 A, C ) 00174 00175 #define ENQUEUE_FLASH_QR_UT_macro( A, T, cntl ) \ 00176 FLASH_Queue_push( (void *) FLA_QR_UT_macro_task, \ 00177 (void *) cntl, \ 00178 "QR ", \ 00179 FALSE, \ 00180 0, 0, 0, 2, \ 00181 A, T ) 00182 00183 #define ENQUEUE_FLASH_QR_UT( A, T, cntl ) \ 00184 FLASH_Queue_push( (void *) FLA_QR_UT_task, \ 00185 (void *) cntl, \ 00186 "QR ", \ 00187 FALSE, \ 00188 0, 1, 0, 1, \ 00189 T, A ) 00190 00191 #define ENQUEUE_FLASH_QR_UT_copy( A, T, U, cntl ) \ 00192 FLASH_Queue_push( (void *) FLA_QR_UT_copy_task, \ 00193 (void *) cntl, \ 00194 "QR ", \ 00195 FALSE, \ 00196 0, 1, 0, 2, \ 00197 T, A, U ) 00198 00199 #define ENQUEUE_FLASH_QR2_UT( B, D, T, cntl ) \ 00200 FLASH_Queue_push( (void *) FLA_QR2_UT_task, \ 00201 (void *) cntl, \ 00202 "QR2 ", \ 00203 FALSE, \ 00204 0, 1, 0, 2, \ 00205 T, D, B ) 00206 00207 #define ENQUEUE_FLASH_LQ_UT_macro( A, T, cntl ) \ 00208 FLASH_Queue_push( (void *) FLA_LQ_UT_macro_task, \ 00209 (void *) cntl, \ 00210 "LQ ", \ 00211 FALSE, \ 00212 0, 0, 0, 2, \ 00213 A, T ) 00214 00215 #define ENQUEUE_FLASH_Apply_Q_UT( side, trans, direct, storev, A, T, W, B, cntl ) \ 00216 FLASH_Queue_push( (void *) FLA_Apply_Q_UT_task, \ 00217 (void *) cntl, \ 00218 "ApQ ", \ 00219 FALSE, \ 00220 4, 1, 1, 2, \ 00221 side, trans, direct, storev, \ 00222 T, A, B, W ) 00223 00224 #define ENQUEUE_FLASH_Apply_Q2_UT( side, trans, direct, storev, D, T, W, C, E, cntl ) \ 00225 FLASH_Queue_push( (void *) FLA_Apply_Q2_UT_task, \ 00226 (void *) cntl, \ 00227 "ApQ2 ", \ 00228 FALSE, \ 00229 4, 1, 1, 3, \ 00230 side, trans, direct, storev, \ 00231 T, D, E, C, W ) 00232 00233 #define ENQUEUE_FLASH_UDdate_UT( R, C, D, T, cntl ) \ 00234 FLASH_Queue_push( (void *) FLA_UDdate_UT_task, \ 00235 (void *) cntl, \ 00236 "UD ", \ 00237 FALSE, \ 00238 0, 0, 0, 4, \ 00239 R, C, D, T ) 00240 00241 #define ENQUEUE_FLASH_Apply_QUD_UT( side, trans, direct, storev, T, W, R, U, C, V, D, cntl ) \ 00242 FLASH_Queue_push( (void *) FLA_Apply_QUD_UT_task, \ 00243 (void *) cntl, \ 00244 "ApQUD", \ 00245 FALSE, \ 00246 4, 0, 3, 4, \ 00247 side, trans, direct, storev, \ 00248 T, U, V, W, R, C, D ) 00249 00250 #define ENQUEUE_FLASH_Eig_gest( inv, uplo, A, Y, B, cntl ) \ 00251 FLASH_Queue_push( (void *) FLA_Eig_gest_task, \ 00252 (void *) cntl, \ 00253 "Eig ", \ 00254 FALSE, \ 00255 2, 0, 1, 2, \ 00256 inv, uplo, \ 00257 B, Y, A ) 00258 00259 // Level-3 BLAS 00260 00261 #define ENQUEUE_FLASH_Gemm( transA, transB, alpha, A, B, beta, C, cntl ) \ 00262 FLASH_Queue_push( (void *) FLA_Gemm_task, \ 00263 (void *) cntl, \ 00264 "Gemm ", \ 00265 TRUE, \ 00266 2, 2, 2, 1, \ 00267 transA, transB, \ 00268 alpha, beta, \ 00269 A, B, C ) 00270 00271 #define ENQUEUE_FLASH_Hemm( side, uplo, alpha, A, B, beta, C, cntl ) \ 00272 FLASH_Queue_push( (void *) FLA_Hemm_task, \ 00273 (void *) cntl, \ 00274 "Hemm ", \ 00275 TRUE, \ 00276 2, 2, 2, 1, \ 00277 side, uplo, \ 00278 alpha, beta, \ 00279 A, B, C ) 00280 00281 #define ENQUEUE_FLASH_Herk( uplo, transA, alpha, A, beta, C, cntl ) \ 00282 FLASH_Queue_push( (void *) FLA_Herk_task, \ 00283 (void *) cntl, \ 00284 "Herk ", \ 00285 TRUE, \ 00286 2, 2, 1, 1, \ 00287 uplo, transA, \ 00288 alpha, beta, \ 00289 A, C ) 00290 00291 #define ENQUEUE_FLASH_Her2k( uplo, transA, alpha, A, B, beta, C, cntl ) \ 00292 FLASH_Queue_push( (void *) FLA_Her2k_task, \ 00293 (void *) cntl, \ 00294 "Her2k", \ 00295 TRUE, \ 00296 2, 2, 2, 1, \ 00297 uplo, transA, \ 00298 alpha, beta, \ 00299 A, B, C ) 00300 00301 #define ENQUEUE_FLASH_Symm( side, uplo, alpha, A, B, beta, C, cntl ) \ 00302 FLASH_Queue_push( (void *) FLA_Symm_task, \ 00303 (void *) cntl, \ 00304 "Symm ", \ 00305 TRUE, \ 00306 2, 2, 2, 1, \ 00307 side, uplo, \ 00308 alpha, beta, \ 00309 A, B, C ) 00310 00311 #define ENQUEUE_FLASH_Syrk( uplo, transA, alpha, A, beta, C, cntl ) \ 00312 FLASH_Queue_push( (void *) FLA_Syrk_task, \ 00313 (void *) cntl, \ 00314 "Syrk ", \ 00315 TRUE, \ 00316 2, 2, 1, 1, \ 00317 uplo, transA, \ 00318 alpha, beta, \ 00319 A, C ) 00320 00321 #define ENQUEUE_FLASH_Syr2k( uplo, transA, alpha, A, B, beta, C, cntl ) \ 00322 FLASH_Queue_push( (void *) FLA_Syr2k_task, \ 00323 (void *) cntl, \ 00324 "Syr2k", \ 00325 TRUE, \ 00326 2, 2, 2, 1, \ 00327 uplo, transA, \ 00328 alpha, beta, \ 00329 A, B, C ) 00330 00331 #define ENQUEUE_FLASH_Trmm( side, uplo, trans, diag, alpha, A, C, cntl ) \ 00332 FLASH_Queue_push( (void *) FLA_Trmm_task, \ 00333 (void *) cntl, \ 00334 "Trmm ", \ 00335 TRUE, \ 00336 4, 1, 1, 1, \ 00337 side, uplo, trans, diag, \ 00338 alpha, \ 00339 A, C ) 00340 00341 #define ENQUEUE_FLASH_Trsm( side, uplo, trans, diag, alpha, A, C, cntl ) \ 00342 FLASH_Queue_push( (void *) FLA_Trsm_task, \ 00343 (void *) cntl, \ 00344 "Trsm ", \ 00345 TRUE, \ 00346 4, 1, 1, 1, \ 00347 side, uplo, trans, diag, \ 00348 alpha, \ 00349 A, C ) 00350 00351 // Level-2 BLAS 00352 00353 #define ENQUEUE_FLASH_Gemv( trans, alpha, A, x, beta, y, cntl ) \ 00354 FLASH_Queue_push( (void *) FLA_Gemv_task, \ 00355 (void *) cntl, \ 00356 "Gemv ", \ 00357 TRUE, \ 00358 1, 2, 2, 1, \ 00359 trans, \ 00360 alpha, beta, \ 00361 A, x, y ) 00362 00363 #define ENQUEUE_FLASH_Trsv( uplo, trans, diag, A, x, cntl ) \ 00364 FLASH_Queue_push( (void *) FLA_Trsv_task, \ 00365 (void *) cntl, \ 00366 "Trsv ", \ 00367 TRUE, \ 00368 3, 0, 1, 1, \ 00369 uplo, trans, diag, \ 00370 A, x ) 00371 00372 // Level-1 BLAS 00373 00374 #define ENQUEUE_FLASH_Axpy( alpha, A, B, cntl ) \ 00375 FLASH_Queue_push( (void *) FLA_Axpy_task, \ 00376 (void *) cntl, \ 00377 "Axpy ", \ 00378 TRUE, \ 00379 0, 1, 1, 1, \ 00380 alpha, \ 00381 A, B ) 00382 00383 #define ENQUEUE_FLASH_Axpyt( trans, alpha, A, B, cntl ) \ 00384 FLASH_Queue_push( (void *) FLA_Axpyt_task, \ 00385 (void *) cntl, \ 00386 "Axpyt", \ 00387 FALSE, \ 00388 1, 1, 1, 1, \ 00389 trans, \ 00390 alpha, \ 00391 A, B ) 00392 00393 #define ENQUEUE_FLASH_Copy( A, B, cntl ) \ 00394 FLASH_Queue_push( (void *) FLA_Copy_task, \ 00395 (void *) cntl, \ 00396 "Copy ", \ 00397 TRUE, \ 00398 0, 0, 1, 1, \ 00399 A, B ) 00400 00401 #define ENQUEUE_FLASH_Copyt( trans, A, B, cntl ) \ 00402 FLASH_Queue_push( (void *) FLA_Copyt_task, \ 00403 (void *) cntl, \ 00404 "Copyt", \ 00405 FALSE, \ 00406 1, 0, 1, 1, \ 00407 trans, \ 00408 A, B ) 00409 00410 #define ENQUEUE_FLASH_Scal( alpha, A, cntl ) \ 00411 FLASH_Queue_push( (void *) FLA_Scal_task, \ 00412 (void *) cntl, \ 00413 "Scal ", \ 00414 TRUE, \ 00415 0, 1, 0, 1, \ 00416 alpha, \ 00417 A ) 00418 00419 #define ENQUEUE_FLASH_Scalr( uplo, alpha, A, cntl ) \ 00420 FLASH_Queue_push( (void *) FLA_Scalr_task, \ 00421 (void *) cntl, \ 00422 "Scalr", \ 00423 TRUE, \ 00424 1, 1, 0, 1, \ 00425 uplo, \ 00426 alpha, \ 00427 A ) 00428 00429 // Base 00430 00431 #define ENQUEUE_FLASH_Obj_create_buffer( rs, cs, A, cntl ) \ 00432 FLASH_Queue_push( (void *) FLA_Obj_create_buffer_task, \ 00433 (void *) cntl, \ 00434 "Buff ", \ 00435 FALSE, \ 00436 2, 0, 0, 1, \ 00437 rs, cs, \ 00438 A ) 00439 00440 #define ENQUEUE_FLASH_Obj_free_buffer( A, cntl ) \ 00441 FLASH_Queue_push( (void *) FLA_Obj_free_buffer_task, \ 00442 (void *) cntl, \ 00443 "Free ", \ 00444 FALSE, \ 00445 0, 0, 0, 1, \ 00446 A ) 00447 00448 #else 00449 00450 // LAPACK-level 00451 00452 #define ENQUEUE_FLASH_LU_piv_macro( A, p, cntl ) \ 00453 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00454 00455 #define ENQUEUE_FLASH_Apply_pivots_macro( side, trans, p, A, cntl ) \ 00456 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00457 00458 #define ENQUEUE_FLASH_LU_piv( A, p, cntl ) \ 00459 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00460 00461 #define ENQUEUE_FLASH_LU_piv_copy( A, p, U, cntl ) \ 00462 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00463 00464 #define ENQUEUE_FLASH_Trsm_piv( A, C, p, cntl ) \ 00465 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00466 00467 #define ENQUEUE_FLASH_SA_LU( U, D, p, L, nb_alg, cntl ) \ 00468 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00469 00470 #define ENQUEUE_FLASH_SA_FS( L, D, p, C, E, nb_alg, cntl ) \ 00471 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00472 00473 #define ENQUEUE_FLASH_LU_nopiv( A, cntl ) \ 00474 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00475 00476 #define ENQUEUE_FLASH_Trinv( uplo, diag, A, cntl ) \ 00477 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00478 00479 #define ENQUEUE_FLASH_Ttmm( uplo, A, cntl ) \ 00480 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00481 00482 #define ENQUEUE_FLASH_Chol( uplo, A, cntl ) \ 00483 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00484 00485 #define ENQUEUE_FLASH_Sylv( transA, transB, isgn, A, B, C, scale, cntl ) \ 00486 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00487 00488 #define ENQUEUE_FLASH_Lyap( trans, isgn, A, C, scale, cntl ) \ 00489 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00490 00491 #define ENQUEUE_FLASH_QR_UT_macro( A, T, cntl ) \ 00492 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00493 00494 #define ENQUEUE_FLASH_QR_UT( A, T, cntl ) \ 00495 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00496 00497 #define ENQUEUE_FLASH_QR_UT_copy( A, T, U, cntl ) \ 00498 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00499 00500 #define ENQUEUE_FLASH_QR2_UT( B, D, T, cntl ) \ 00501 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00502 00503 #define ENQUEUE_FLASH_LQ_UT_macro( A, T, cntl ) \ 00504 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00505 00506 #define ENQUEUE_FLASH_UDdate_UT( R, C, D, T, cntl ) \ 00507 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00508 00509 #define ENQUEUE_FLASH_Apply_Q_UT( side, trans, direct, storev, A, T, W, B, cntl ) \ 00510 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00511 00512 #define ENQUEUE_FLASH_Apply_Q2_UT( side, trans, direct, storev, D, T, W, C, E, cntl ) \ 00513 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00514 00515 #define ENQUEUE_FLASH_Apply_QUD_UT( side, trans, direct, storev, T, W, R, U, C, V, D, cntl ) \ 00516 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00517 00518 #define ENQUEUE_FLASH_Eig_gest( inv, uplo, A, Y, B, cntl ) \ 00519 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00520 00521 // Level-3 BLAS 00522 00523 #define ENQUEUE_FLASH_Gemm( transA, transB, alpha, A, B, beta, C, cntl ) \ 00524 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00525 00526 #define ENQUEUE_FLASH_Hemm( side, uplo, alpha, A, B, beta, C, cntl ) \ 00527 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00528 00529 #define ENQUEUE_FLASH_Herk( uplo, transA, alpha, A, beta, C, cntl ) \ 00530 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00531 00532 #define ENQUEUE_FLASH_Her2k( uplo, transA, alpha, A, B, beta, C, cntl ) \ 00533 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00534 00535 #define ENQUEUE_FLASH_Symm( side, uplo, alpha, A, B, beta, C, cntl ) \ 00536 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00537 00538 #define ENQUEUE_FLASH_Syrk( uplo, transA, alpha, A, beta, C, cntl ) \ 00539 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00540 00541 #define ENQUEUE_FLASH_Syr2k( uplo, transA, alpha, A, B, beta, C, cntl ) \ 00542 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00543 00544 #define ENQUEUE_FLASH_Trmm( side, uplo, trans, diag, alpha, A, C, cntl ) \ 00545 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00546 00547 #define ENQUEUE_FLASH_Trsm( side, uplo, trans, diag, alpha, A, C, cntl ) \ 00548 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00549 00550 // Level-2 BLAS 00551 00552 #define ENQUEUE_FLASH_Gemv( transA, alpha, A, x, beta, y, cntl ) \ 00553 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00554 00555 #define ENQUEUE_FLASH_Trsv( uplo, trans, diag, A, x, cntl ) \ 00556 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00557 00558 // Level-1 BLAS 00559 00560 #define ENQUEUE_FLASH_Axpy( alpha, A, B, cntl ) \ 00561 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00562 00563 #define ENQUEUE_FLASH_Axpyt( trans, alpha, A, B, cntl ) \ 00564 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00565 00566 #define ENQUEUE_FLASH_Copy( A, B, cntl ) \ 00567 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00568 00569 #define ENQUEUE_FLASH_Copyt( trans, A, B, cntl ) \ 00570 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00571 00572 #define ENQUEUE_FLASH_Scal( alpha, A, cntl ) \ 00573 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00574 00575 #define ENQUEUE_FLASH_Scalr( uplo, alpha, A, cntl ) \ 00576 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00577 00578 // Base 00579 00580 #define ENQUEUE_FLASH_Obj_create_buffer( rs, cs, A, cntl ) \ 00581 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00582 00583 #define ENQUEUE_FLASH_Obj_free_buffer( A, cntl ) \ 00584 FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED ) 00585 00586 #endif // FLA_ENABLE_SUPERMATRIX 00587 00588 00589 #endif // FLASH_QUEUE_MACRO_DEFS_H