mkl_spblas.h 181 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758
  1. /*******************************************************************************
  2. * Copyright 2005-2022 Intel Corporation.
  3. *
  4. * This software and the related documents are Intel copyrighted materials, and
  5. * your use of them is governed by the express license under which they were
  6. * provided to you (License). Unless the License provides otherwise, you may not
  7. * use, modify, copy, publish, distribute, disclose or transmit this software or
  8. * the related documents without Intel's prior written permission.
  9. *
  10. * This software and the related documents are provided as is, with no express
  11. * or implied warranties, other than those that are expressly stated in the
  12. * License.
  13. *******************************************************************************/
  14. /*
  15. ! Content:
  16. ! Intel(R) oneAPI Math Kernel Library (oneMKL) interface for Sparse BLAS
  17. ! level 2,3 routines
  18. !
  19. !******************************************************************************/
  20. #ifndef _MKL_SPBLAS_H_
  21. #define _MKL_SPBLAS_H_
  22. #include "mkl_types.h"
  23. #ifdef __GNUC__
  24. #define MKL_DEPRECATED __attribute__((deprecated))
  25. #elif defined(_MSC_VER)
  26. #define MKL_DEPRECATED __declspec(deprecated)
  27. #else
  28. #pragma message("WARNING: Intel oneMKL SpBLAS was declared deprecated. Use Intel oneMKL IE SpBLAS instead")
  29. #define MKL_DEPRECATED
  30. #endif
  31. #ifdef __cplusplus
  32. extern "C" {
  33. #endif /* __cplusplus */
  34. /* Float */
  35. /* Sparse BLAS Level2 lower case */
  36. MKL_DEPRECATED void mkl_scsrmv(const char *transa, const MKL_INT *m, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *x, const float *beta, float *y);
  37. MKL_DEPRECATED void mkl_scsrsv(const char *transa, const MKL_INT *m, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *x, float *y);
  38. MKL_DEPRECATED void mkl_scsrgemv(const char *transa, const MKL_INT *m, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  39. MKL_DEPRECATED void mkl_cspblas_scsrgemv(const char *transa, const MKL_INT *m, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  40. MKL_DEPRECATED void mkl_scsrsymv(const char *uplo, const MKL_INT *m, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  41. MKL_DEPRECATED void mkl_cspblas_scsrsymv(const char *uplo, const MKL_INT *m, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  42. MKL_DEPRECATED void mkl_scsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  43. MKL_DEPRECATED void mkl_cspblas_scsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  44. MKL_DEPRECATED void mkl_scscmv(const char *transa, const MKL_INT *m, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *x, const float *beta, float *y);
  45. MKL_DEPRECATED void mkl_scscsv(const char *transa, const MKL_INT *m, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *x, float *y);
  46. MKL_DEPRECATED void mkl_scoomv(const char *transa, const MKL_INT *m, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, const float *beta, float *y);
  47. MKL_DEPRECATED void mkl_scoosv(const char *transa, const MKL_INT *m, const float *alpha, const char *matdescra, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  48. MKL_DEPRECATED void mkl_scoogemv(const char *transa, const MKL_INT *m, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  49. MKL_DEPRECATED void mkl_cspblas_scoogemv(const char *transa, const MKL_INT *m, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  50. MKL_DEPRECATED void mkl_scoosymv(const char *uplo, const MKL_INT *m, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  51. MKL_DEPRECATED void mkl_cspblas_scoosymv(const char *uplo, const MKL_INT *m, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  52. MKL_DEPRECATED void mkl_scootrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  53. MKL_DEPRECATED void mkl_cspblas_scootrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  54. MKL_DEPRECATED void mkl_sdiamv (const char *transa, const MKL_INT *m, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *x, const float *beta, float *y);
  55. MKL_DEPRECATED void mkl_sdiasv (const char *transa, const MKL_INT *m, const float *alpha, const char *matdescra, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *x, float *y);
  56. MKL_DEPRECATED void mkl_sdiagemv(const char *transa, const MKL_INT *m, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *x, float *y);
  57. MKL_DEPRECATED void mkl_sdiasymv(const char *uplo, const MKL_INT *m, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *x, float *y);
  58. MKL_DEPRECATED void mkl_sdiatrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *x, float *y);
  59. MKL_DEPRECATED void mkl_sskymv (const char *transa, const MKL_INT *m, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *pntr, const float *x, const float *beta, float *y);
  60. MKL_DEPRECATED void mkl_sskysv(const char *transa, const MKL_INT *m, const float *alpha, const char *matdescra, const float *val, const MKL_INT *pntr, const float *x, float *y);
  61. MKL_DEPRECATED void mkl_sbsrmv (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_INT *lb, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *x, const float *beta, float *y);
  62. MKL_DEPRECATED void mkl_sbsrsv(const char *transa, const MKL_INT *m, const MKL_INT *lb, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *x, float *y);
  63. MKL_DEPRECATED void mkl_sbsrgemv(const char *transa, const MKL_INT *m, const MKL_INT *lb, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  64. MKL_DEPRECATED void mkl_cspblas_sbsrgemv(const char *transa, const MKL_INT *m, const MKL_INT *lb, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  65. MKL_DEPRECATED void mkl_sbsrsymv(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  66. MKL_DEPRECATED void mkl_cspblas_sbsrsymv(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  67. MKL_DEPRECATED void mkl_sbsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  68. MKL_DEPRECATED void mkl_cspblas_sbsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  69. /* Sparse BLAS Level3 lower case */
  70. MKL_DEPRECATED void mkl_scsrmm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *b, const MKL_INT *ldb, const float *beta, float *c, const MKL_INT *ldc);
  71. MKL_DEPRECATED void mkl_scsrsm(const char *transa, const MKL_INT *m, const MKL_INT *n, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *b, const MKL_INT *ldb, float *c, const MKL_INT *ldc);
  72. MKL_DEPRECATED void mkl_scscmm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *b, const MKL_INT *ldb, const float *beta, float *c, const MKL_INT *ldc);
  73. MKL_DEPRECATED void mkl_scscsm(const char *transa, const MKL_INT *m, const MKL_INT *n, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *b, const MKL_INT *ldb, float *c, const MKL_INT *ldc);
  74. MKL_DEPRECATED void mkl_scoomm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *b, const MKL_INT *ldb, const float *beta, float *c, const MKL_INT *ldc);
  75. MKL_DEPRECATED void mkl_scoosm(const char *transa, const MKL_INT *m, const MKL_INT *n, const float *alpha, const char *matdescra, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *b, const MKL_INT *ldb, float *c, const MKL_INT *ldc);
  76. MKL_DEPRECATED void mkl_sdiamm (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *b, const MKL_INT *ldb, const float *beta, float *c, const MKL_INT *ldc);
  77. MKL_DEPRECATED void mkl_sdiasm (const char *transa, const MKL_INT *m, const MKL_INT *n, const float *alpha, const char *matdescra, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *b, const MKL_INT *ldb, float *c, const MKL_INT *ldc);
  78. MKL_DEPRECATED void mkl_sskysm (const char *transa, const MKL_INT *m, const MKL_INT *n, const float *alpha, const char *matdescra, const float *val, const MKL_INT *pntr, const float *b, const MKL_INT *ldb, float *c, const MKL_INT *ldc);
  79. MKL_DEPRECATED void mkl_sskymm (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *pntr, const float *b, const MKL_INT *ldb, const float *beta, float *c, const MKL_INT *ldc);
  80. MKL_DEPRECATED void mkl_sbsrmm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_INT *lb, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *b, const MKL_INT *ldb, const float *beta, float *c, const MKL_INT *ldc);
  81. MKL_DEPRECATED void mkl_sbsrsm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *lb, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *b, const MKL_INT *ldb, float *c, const MKL_INT *ldc);
  82. /* Upper case declaration */
  83. /* Sparse BLAS Level2 upper case */
  84. MKL_DEPRECATED void MKL_SCSRMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *x, const float *beta, float *y);
  85. MKL_DEPRECATED void MKL_SCSRSV(const char *transa, const MKL_INT *m, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *x, float *y);
  86. MKL_DEPRECATED void MKL_SCSRGEMV(const char *transa, const MKL_INT *m, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  87. MKL_DEPRECATED void MKL_CSPBLAS_SCSRGEMV(const char *transa, const MKL_INT *m, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  88. MKL_DEPRECATED void MKL_SCSRSYMV(const char *uplo, const MKL_INT *m, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  89. MKL_DEPRECATED void MKL_CSPBLAS_SCSRSYMV(const char *uplo, const MKL_INT *m, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  90. MKL_DEPRECATED void MKL_SCSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  91. MKL_DEPRECATED void MKL_CSPBLAS_SCSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  92. MKL_DEPRECATED void MKL_SCSCMV(const char *transa, const MKL_INT *m, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *x, const float *beta, float *y);
  93. MKL_DEPRECATED void MKL_SCSCSV(const char *transa, const MKL_INT *m, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *x, float *y);
  94. MKL_DEPRECATED void MKL_SCOOMV(const char *transa, const MKL_INT *m, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, const float *beta, float *y);
  95. MKL_DEPRECATED void MKL_SCOOSV(const char *transa, const MKL_INT *m, const float *alpha, const char *matdescra, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  96. MKL_DEPRECATED void MKL_SCOOGEMV(const char *transa, const MKL_INT *m, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  97. MKL_DEPRECATED void MKL_CSPBLAS_SCOOGEMV(const char *transa, const MKL_INT *m, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  98. MKL_DEPRECATED void MKL_SCOOSYMV(const char *uplo, const MKL_INT *m, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  99. MKL_DEPRECATED void MKL_CSPBLAS_SCOOSYMV(const char *uplo, const MKL_INT *m, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  100. MKL_DEPRECATED void MKL_SCOOTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  101. MKL_DEPRECATED void MKL_CSPBLAS_SCOOTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *x, float *y);
  102. MKL_DEPRECATED void MKL_SDIAMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *x, const float *beta, float *y);
  103. MKL_DEPRECATED void MKL_SDIASV (const char *transa, const MKL_INT *m, const float *alpha, const char *matdescra, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *x, float *y);
  104. MKL_DEPRECATED void MKL_SDIAGEMV(const char *transa, const MKL_INT *m, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *x, float *y);
  105. MKL_DEPRECATED void MKL_SDIASYMV(const char *uplo, const MKL_INT *m, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *x, float *y);
  106. MKL_DEPRECATED void MKL_SDIATRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *x, float *y);
  107. MKL_DEPRECATED void MKL_SSKYMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *pntr, const float *x, const float *beta, float *y);
  108. MKL_DEPRECATED void MKL_SSKYSV(const char *transa, const MKL_INT *m, const float *alpha, const char *matdescra, const float *val, const MKL_INT *pntr, const float *x, float *y);
  109. MKL_DEPRECATED void MKL_SBSRMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_INT *lb, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *x, const float *beta, float *y);
  110. MKL_DEPRECATED void MKL_SBSRSV(const char *transa, const MKL_INT *m, const MKL_INT *lb, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *x, float *y);
  111. MKL_DEPRECATED void MKL_SBSRGEMV(const char *transa, const MKL_INT *m, const MKL_INT *lb, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  112. MKL_DEPRECATED void MKL_CSPBLAS_SBSRGEMV(const char *transa, const MKL_INT *m, const MKL_INT *lb, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  113. MKL_DEPRECATED void MKL_SBSRSYMV(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  114. MKL_DEPRECATED void MKL_CSPBLAS_SBSRSYMV(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  115. MKL_DEPRECATED void MKL_SBSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  116. MKL_DEPRECATED void MKL_CSPBLAS_SBSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const float *a, const MKL_INT *ia, const MKL_INT *ja, const float *x, float *y);
  117. /* Sparse BLAS Level3 upper case */
  118. MKL_DEPRECATED void MKL_SCSRMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *b, const MKL_INT *ldb, const float *beta, float *c, const MKL_INT *ldc);
  119. MKL_DEPRECATED void MKL_SCSRSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *b, const MKL_INT *ldb, float *c, const MKL_INT *ldc);
  120. MKL_DEPRECATED void MKL_SCSCMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *b, const MKL_INT *ldb, const float *beta, float *c, const MKL_INT *ldc);
  121. MKL_DEPRECATED void MKL_SCSCSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *b, const MKL_INT *ldb, float *c, const MKL_INT *ldc);
  122. MKL_DEPRECATED void MKL_SCOOMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *b, const MKL_INT *ldb, const float *beta, float *c, const MKL_INT *ldc);
  123. MKL_DEPRECATED void MKL_SCOOSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const float *alpha, const char *matdescra, const float *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const float *b, const MKL_INT *ldb, float *c, const MKL_INT *ldc);
  124. MKL_DEPRECATED void MKL_SDIAMM (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *b, const MKL_INT *ldb, const float *beta, float *c, const MKL_INT *ldc);
  125. MKL_DEPRECATED void MKL_SDIASM (const char *transa, const MKL_INT *m, const MKL_INT *n, const float *alpha, const char *matdescra, const float *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const float *b, const MKL_INT *ldb, float *c, const MKL_INT *ldc);
  126. MKL_DEPRECATED void MKL_SSKYSM (const char *transa, const MKL_INT *m, const MKL_INT *n, const float *alpha, const char *matdescra, const float *val, const MKL_INT *pntr, const float *b, const MKL_INT *ldb, float *c, const MKL_INT *ldc);
  127. MKL_DEPRECATED void MKL_SSKYMM (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const float *alpha, const char *matdescra, const float *val, const MKL_INT *pntr, const float *b, const MKL_INT *ldb, const float *beta, float *c, const MKL_INT *ldc);
  128. MKL_DEPRECATED void MKL_SBSRMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_INT *lb, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *b, const MKL_INT *ldb, const float *beta, float *c, const MKL_INT *ldc);
  129. MKL_DEPRECATED void MKL_SBSRSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *lb, const float *alpha, const char *matdescra, const float *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const float *b, const MKL_INT *ldb, float *c, const MKL_INT *ldc);
  130. /* Double */
  131. /* Sparse BLAS Level2 lower case */
  132. MKL_DEPRECATED void mkl_dcsrmv(const char *transa, const MKL_INT *m, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *x, const double *beta, double *y);
  133. MKL_DEPRECATED void mkl_dcsrsv(const char *transa, const MKL_INT *m, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *x, double *y);
  134. MKL_DEPRECATED void mkl_dcsrgemv(const char *transa, const MKL_INT *m, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  135. MKL_DEPRECATED void mkl_cspblas_dcsrgemv(const char *transa, const MKL_INT *m, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  136. MKL_DEPRECATED void mkl_dcsrsymv(const char *uplo, const MKL_INT *m, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  137. MKL_DEPRECATED void mkl_cspblas_dcsrsymv(const char *uplo, const MKL_INT *m, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  138. MKL_DEPRECATED void mkl_dcsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  139. MKL_DEPRECATED void mkl_cspblas_dcsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  140. MKL_DEPRECATED void mkl_dcscmv(const char *transa, const MKL_INT *m, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *x, const double *beta, double *y);
  141. MKL_DEPRECATED void mkl_dcscsv(const char *transa, const MKL_INT *m, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *x, double *y);
  142. MKL_DEPRECATED void mkl_dcoomv(const char *transa, const MKL_INT *m, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, const double *beta, double *y);
  143. MKL_DEPRECATED void mkl_dcoosv(const char *transa, const MKL_INT *m, const double *alpha, const char *matdescra, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  144. MKL_DEPRECATED void mkl_dcoogemv(const char *transa, const MKL_INT *m, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  145. MKL_DEPRECATED void mkl_cspblas_dcoogemv(const char *transa, const MKL_INT *m, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  146. MKL_DEPRECATED void mkl_dcoosymv(const char *uplo, const MKL_INT *m, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  147. MKL_DEPRECATED void mkl_cspblas_dcoosymv(const char *uplo, const MKL_INT *m, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  148. MKL_DEPRECATED void mkl_dcootrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  149. MKL_DEPRECATED void mkl_cspblas_dcootrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  150. MKL_DEPRECATED void mkl_ddiamv (const char *transa, const MKL_INT *m, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *x, const double *beta, double *y);
  151. MKL_DEPRECATED void mkl_ddiasv (const char *transa, const MKL_INT *m, const double *alpha, const char *matdescra, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *x, double *y);
  152. MKL_DEPRECATED void mkl_ddiagemv(const char *transa, const MKL_INT *m, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *x, double *y);
  153. MKL_DEPRECATED void mkl_ddiasymv(const char *uplo, const MKL_INT *m, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *x, double *y);
  154. MKL_DEPRECATED void mkl_ddiatrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *x, double *y);
  155. MKL_DEPRECATED void mkl_dskymv (const char *transa, const MKL_INT *m, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *pntr, const double *x, const double *beta, double *y);
  156. MKL_DEPRECATED void mkl_dskysv(const char *transa, const MKL_INT *m, const double *alpha, const char *matdescra, const double *val, const MKL_INT *pntr, const double *x, double *y);
  157. MKL_DEPRECATED void mkl_dbsrmv (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_INT *lb, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *x, const double *beta, double *y);
  158. MKL_DEPRECATED void mkl_dbsrsv(const char *transa, const MKL_INT *m, const MKL_INT *lb, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *x, double *y);
  159. MKL_DEPRECATED void mkl_dbsrgemv(const char *transa, const MKL_INT *m, const MKL_INT *lb, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  160. MKL_DEPRECATED void mkl_cspblas_dbsrgemv(const char *transa, const MKL_INT *m, const MKL_INT *lb, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  161. MKL_DEPRECATED void mkl_dbsrsymv(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  162. MKL_DEPRECATED void mkl_cspblas_dbsrsymv(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  163. MKL_DEPRECATED void mkl_dbsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  164. MKL_DEPRECATED void mkl_cspblas_dbsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  165. /* Sparse BLAS Level3 lower case */
  166. MKL_DEPRECATED void mkl_dcsrmm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *b, const MKL_INT *ldb, const double *beta, double *c, const MKL_INT *ldc);
  167. MKL_DEPRECATED void mkl_dcsrsm(const char *transa, const MKL_INT *m, const MKL_INT *n, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *b, const MKL_INT *ldb, double *c, const MKL_INT *ldc);
  168. MKL_DEPRECATED void mkl_dcscmm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *b, const MKL_INT *ldb, const double *beta, double *c, const MKL_INT *ldc);
  169. MKL_DEPRECATED void mkl_dcscsm(const char *transa, const MKL_INT *m, const MKL_INT *n, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *b, const MKL_INT *ldb, double *c, const MKL_INT *ldc);
  170. MKL_DEPRECATED void mkl_dcoomm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *b, const MKL_INT *ldb, const double *beta, double *c, const MKL_INT *ldc);
  171. MKL_DEPRECATED void mkl_dcoosm(const char *transa, const MKL_INT *m, const MKL_INT *n, const double *alpha, const char *matdescra, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *b, const MKL_INT *ldb, double *c, const MKL_INT *ldc);
  172. MKL_DEPRECATED void mkl_ddiamm (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *b, const MKL_INT *ldb, const double *beta, double *c, const MKL_INT *ldc);
  173. MKL_DEPRECATED void mkl_ddiasm (const char *transa, const MKL_INT *m, const MKL_INT *n, const double *alpha, const char *matdescra, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *b, const MKL_INT *ldb, double *c, const MKL_INT *ldc);
  174. MKL_DEPRECATED void mkl_dskysm (const char *transa, const MKL_INT *m, const MKL_INT *n, const double *alpha, const char *matdescra, const double *val, const MKL_INT *pntr, const double *b, const MKL_INT *ldb, double *c, const MKL_INT *ldc);
  175. MKL_DEPRECATED void mkl_dskymm (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *pntr, const double *b, const MKL_INT *ldb, const double *beta, double *c, const MKL_INT *ldc);
  176. MKL_DEPRECATED void mkl_dbsrmm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_INT *lb, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *b, const MKL_INT *ldb, const double *beta, double *c, const MKL_INT *ldc);
  177. MKL_DEPRECATED void mkl_dbsrsm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *lb, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *b, const MKL_INT *ldb, double *c, const MKL_INT *ldc);
  178. /* Upper case declaration */
  179. /* Sparse BLAS Level2 upper case */
  180. MKL_DEPRECATED void MKL_DCSRMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *x, const double *beta, double *y);
  181. MKL_DEPRECATED void MKL_DCSRSV(const char *transa, const MKL_INT *m, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *x, double *y);
  182. MKL_DEPRECATED void MKL_DCSRGEMV(const char *transa, const MKL_INT *m, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  183. MKL_DEPRECATED void MKL_CSPBLAS_DCSRGEMV(const char *transa, const MKL_INT *m, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  184. MKL_DEPRECATED void MKL_DCSRSYMV(const char *uplo, const MKL_INT *m, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  185. MKL_DEPRECATED void MKL_CSPBLAS_DCSRSYMV(const char *uplo, const MKL_INT *m, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  186. MKL_DEPRECATED void MKL_DCSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  187. MKL_DEPRECATED void MKL_CSPBLAS_DCSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  188. MKL_DEPRECATED void MKL_DCSCMV(const char *transa, const MKL_INT *m, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *x, const double *beta, double *y);
  189. MKL_DEPRECATED void MKL_DCSCSV(const char *transa, const MKL_INT *m, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *x, double *y);
  190. MKL_DEPRECATED void MKL_DCOOMV(const char *transa, const MKL_INT *m, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, const double *beta, double *y);
  191. MKL_DEPRECATED void MKL_DCOOSV(const char *transa, const MKL_INT *m, const double *alpha, const char *matdescra, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  192. MKL_DEPRECATED void MKL_DCOOGEMV(const char *transa, const MKL_INT *m, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  193. MKL_DEPRECATED void MKL_CSPBLAS_DCOOGEMV(const char *transa, const MKL_INT *m, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  194. MKL_DEPRECATED void MKL_DCOOSYMV(const char *uplo, const MKL_INT *m, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  195. MKL_DEPRECATED void MKL_CSPBLAS_DCOOSYMV(const char *uplo, const MKL_INT *m, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  196. MKL_DEPRECATED void MKL_DCOOTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  197. MKL_DEPRECATED void MKL_CSPBLAS_DCOOTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *x, double *y);
  198. MKL_DEPRECATED void MKL_DDIAMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *x, const double *beta, double *y);
  199. MKL_DEPRECATED void MKL_DDIASV (const char *transa, const MKL_INT *m, const double *alpha, const char *matdescra, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *x, double *y);
  200. MKL_DEPRECATED void MKL_DDIAGEMV(const char *transa, const MKL_INT *m, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *x, double *y);
  201. MKL_DEPRECATED void MKL_DDIASYMV(const char *uplo, const MKL_INT *m, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *x, double *y);
  202. MKL_DEPRECATED void MKL_DDIATRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *x, double *y);
  203. MKL_DEPRECATED void MKL_DSKYMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *pntr, const double *x, const double *beta, double *y);
  204. MKL_DEPRECATED void MKL_DSKYSV(const char *transa, const MKL_INT *m, const double *alpha, const char *matdescra, const double *val, const MKL_INT *pntr, const double *x, double *y);
  205. MKL_DEPRECATED void MKL_DBSRMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_INT *lb, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *x, const double *beta, double *y);
  206. MKL_DEPRECATED void MKL_DBSRSV(const char *transa, const MKL_INT *m, const MKL_INT *lb, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *x, double *y);
  207. MKL_DEPRECATED void MKL_DBSRGEMV(const char *transa, const MKL_INT *m, const MKL_INT *lb, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  208. MKL_DEPRECATED void MKL_CSPBLAS_DBSRGEMV(const char *transa, const MKL_INT *m, const MKL_INT *lb, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  209. MKL_DEPRECATED void MKL_DBSRSYMV(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  210. MKL_DEPRECATED void MKL_CSPBLAS_DBSRSYMV(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  211. MKL_DEPRECATED void MKL_DBSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  212. MKL_DEPRECATED void MKL_CSPBLAS_DBSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const double *a, const MKL_INT *ia, const MKL_INT *ja, const double *x, double *y);
  213. /* Sparse BLAS Level3 upper case */
  214. MKL_DEPRECATED void MKL_DCSRMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *b, const MKL_INT *ldb, const double *beta, double *c, const MKL_INT *ldc);
  215. MKL_DEPRECATED void MKL_DCSRSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *b, const MKL_INT *ldb, double *c, const MKL_INT *ldc);
  216. MKL_DEPRECATED void MKL_DCSCMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *b, const MKL_INT *ldb, const double *beta, double *c, const MKL_INT *ldc);
  217. MKL_DEPRECATED void MKL_DCSCSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *b, const MKL_INT *ldb, double *c, const MKL_INT *ldc);
  218. MKL_DEPRECATED void MKL_DCOOMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *b, const MKL_INT *ldb, const double *beta, double *c, const MKL_INT *ldc);
  219. MKL_DEPRECATED void MKL_DCOOSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const double *alpha, const char *matdescra, const double *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const double *b, const MKL_INT *ldb, double *c, const MKL_INT *ldc);
  220. MKL_DEPRECATED void MKL_DDIAMM (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *b, const MKL_INT *ldb, const double *beta, double *c, const MKL_INT *ldc);
  221. MKL_DEPRECATED void MKL_DDIASM (const char *transa, const MKL_INT *m, const MKL_INT *n, const double *alpha, const char *matdescra, const double *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const double *b, const MKL_INT *ldb, double *c, const MKL_INT *ldc);
  222. MKL_DEPRECATED void MKL_DSKYSM (const char *transa, const MKL_INT *m, const MKL_INT *n, const double *alpha, const char *matdescra, const double *val, const MKL_INT *pntr, const double *b, const MKL_INT *ldb, double *c, const MKL_INT *ldc);
  223. MKL_DEPRECATED void MKL_DSKYMM (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const double *alpha, const char *matdescra, const double *val, const MKL_INT *pntr, const double *b, const MKL_INT *ldb, const double *beta, double *c, const MKL_INT *ldc);
  224. MKL_DEPRECATED void MKL_DBSRMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_INT *lb, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *b, const MKL_INT *ldb, const double *beta, double *c, const MKL_INT *ldc);
  225. MKL_DEPRECATED void MKL_DBSRSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *lb, const double *alpha, const char *matdescra, const double *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const double *b, const MKL_INT *ldb, double *c, const MKL_INT *ldc);
  226. /* MKL_Complex8 */
  227. /* Sparse BLAS Level2 lower case */
  228. MKL_DEPRECATED void mkl_ccsrmv(const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *x, const MKL_Complex8 *beta, MKL_Complex8 *y);
  229. MKL_DEPRECATED void mkl_ccsrsv(const char *transa, const MKL_INT *m, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *x, MKL_Complex8 *y);
  230. MKL_DEPRECATED void mkl_ccsrgemv(const char *transa, const MKL_INT *m, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  231. MKL_DEPRECATED void mkl_cspblas_ccsrgemv(const char *transa, const MKL_INT *m, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  232. MKL_DEPRECATED void mkl_ccsrsymv(const char *uplo, const MKL_INT *m, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  233. MKL_DEPRECATED void mkl_cspblas_ccsrsymv(const char *uplo, const MKL_INT *m, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  234. MKL_DEPRECATED void mkl_ccsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  235. MKL_DEPRECATED void mkl_cspblas_ccsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  236. MKL_DEPRECATED void mkl_ccscmv(const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *x, const MKL_Complex8 *beta, MKL_Complex8 *y);
  237. MKL_DEPRECATED void mkl_ccscsv(const char *transa, const MKL_INT *m, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *x, MKL_Complex8 *y);
  238. MKL_DEPRECATED void mkl_ccoomv(const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, const MKL_Complex8 *beta, MKL_Complex8 *y);
  239. MKL_DEPRECATED void mkl_ccoosv(const char *transa, const MKL_INT *m, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  240. MKL_DEPRECATED void mkl_ccoogemv(const char *transa, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  241. MKL_DEPRECATED void mkl_cspblas_ccoogemv(const char *transa, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  242. MKL_DEPRECATED void mkl_ccoosymv(const char *uplo, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  243. MKL_DEPRECATED void mkl_cspblas_ccoosymv(const char *uplo, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  244. MKL_DEPRECATED void mkl_ccootrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  245. MKL_DEPRECATED void mkl_cspblas_ccootrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  246. MKL_DEPRECATED void mkl_cdiamv (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *x, const MKL_Complex8 *beta, MKL_Complex8 *y);
  247. MKL_DEPRECATED void mkl_cdiasv (const char *transa, const MKL_INT *m, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *x, MKL_Complex8 *y);
  248. MKL_DEPRECATED void mkl_cdiagemv(const char *transa, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *x, MKL_Complex8 *y);
  249. MKL_DEPRECATED void mkl_cdiasymv(const char *uplo, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *x, MKL_Complex8 *y);
  250. MKL_DEPRECATED void mkl_cdiatrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *x, MKL_Complex8 *y);
  251. MKL_DEPRECATED void mkl_cskymv (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *pntr, const MKL_Complex8 *x, const MKL_Complex8 *beta, MKL_Complex8 *y);
  252. MKL_DEPRECATED void mkl_cskysv(const char *transa, const MKL_INT *m, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *pntr, const MKL_Complex8 *x, MKL_Complex8 *y);
  253. MKL_DEPRECATED void mkl_cbsrmv (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_INT *lb, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *x, const MKL_Complex8 *beta, MKL_Complex8 *y);
  254. MKL_DEPRECATED void mkl_cbsrsv(const char *transa, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *x, MKL_Complex8 *y);
  255. MKL_DEPRECATED void mkl_cbsrgemv(const char *transa, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  256. MKL_DEPRECATED void mkl_cspblas_cbsrgemv(const char *transa, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  257. MKL_DEPRECATED void mkl_cbsrsymv(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  258. MKL_DEPRECATED void mkl_cspblas_cbsrsymv(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  259. MKL_DEPRECATED void mkl_cbsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  260. MKL_DEPRECATED void mkl_cspblas_cbsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  261. /* Sparse BLAS Level3 lower case */
  262. MKL_DEPRECATED void mkl_ccsrmm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *b, const MKL_INT *ldb, const MKL_Complex8 *beta, MKL_Complex8 *c, const MKL_INT *ldc);
  263. MKL_DEPRECATED void mkl_ccsrsm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *b, const MKL_INT *ldb, MKL_Complex8 *c, const MKL_INT *ldc);
  264. MKL_DEPRECATED void mkl_ccscmm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *b, const MKL_INT *ldb, const MKL_Complex8 *beta, MKL_Complex8 *c, const MKL_INT *ldc);
  265. MKL_DEPRECATED void mkl_ccscsm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *b, const MKL_INT *ldb, MKL_Complex8 *c, const MKL_INT *ldc);
  266. MKL_DEPRECATED void mkl_ccoomm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *b, const MKL_INT *ldb, const MKL_Complex8 *beta, MKL_Complex8 *c, const MKL_INT *ldc);
  267. MKL_DEPRECATED void mkl_ccoosm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *b, const MKL_INT *ldb, MKL_Complex8 *c, const MKL_INT *ldc);
  268. MKL_DEPRECATED void mkl_cdiamm (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *b, const MKL_INT *ldb, const MKL_Complex8 *beta, MKL_Complex8 *c, const MKL_INT *ldc);
  269. MKL_DEPRECATED void mkl_cdiasm (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *b, const MKL_INT *ldb, MKL_Complex8 *c, const MKL_INT *ldc);
  270. MKL_DEPRECATED void mkl_cskysm (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *pntr, const MKL_Complex8 *b, const MKL_INT *ldb, MKL_Complex8 *c, const MKL_INT *ldc);
  271. MKL_DEPRECATED void mkl_cskymm (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *pntr, const MKL_Complex8 *b, const MKL_INT *ldb, const MKL_Complex8 *beta, MKL_Complex8 *c, const MKL_INT *ldc);
  272. MKL_DEPRECATED void mkl_cbsrmm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_INT *lb, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *b, const MKL_INT *ldb, const MKL_Complex8 *beta, MKL_Complex8 *c, const MKL_INT *ldc);
  273. MKL_DEPRECATED void mkl_cbsrsm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *lb, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *b, const MKL_INT *ldb, MKL_Complex8 *c, const MKL_INT *ldc);
  274. /* Upper case declaration */
  275. /* Sparse BLAS Level2 upper case */
  276. MKL_DEPRECATED void MKL_CCSRMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *x, const MKL_Complex8 *beta, MKL_Complex8 *y);
  277. MKL_DEPRECATED void MKL_CCSRSV(const char *transa, const MKL_INT *m, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *x, MKL_Complex8 *y);
  278. MKL_DEPRECATED void MKL_CCSRGEMV(const char *transa, const MKL_INT *m, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  279. MKL_DEPRECATED void MKL_CSPBLAS_CCSRGEMV(const char *transa, const MKL_INT *m, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  280. MKL_DEPRECATED void MKL_CCSRSYMV(const char *uplo, const MKL_INT *m, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  281. MKL_DEPRECATED void MKL_CSPBLAS_CCSRSYMV(const char *uplo, const MKL_INT *m, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  282. MKL_DEPRECATED void MKL_CCSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  283. MKL_DEPRECATED void MKL_CSPBLAS_CCSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  284. MKL_DEPRECATED void MKL_CCSCMV(const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *x, const MKL_Complex8 *beta, MKL_Complex8 *y);
  285. MKL_DEPRECATED void MKL_CCSCSV(const char *transa, const MKL_INT *m, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *x, MKL_Complex8 *y);
  286. MKL_DEPRECATED void MKL_CCOOMV(const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, const MKL_Complex8 *beta, MKL_Complex8 *y);
  287. MKL_DEPRECATED void MKL_CCOOSV(const char *transa, const MKL_INT *m, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  288. MKL_DEPRECATED void MKL_CCOOGEMV(const char *transa, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  289. MKL_DEPRECATED void MKL_CSPBLAS_CCOOGEMV(const char *transa, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  290. MKL_DEPRECATED void MKL_CCOOSYMV(const char *uplo, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  291. MKL_DEPRECATED void MKL_CSPBLAS_CCOOSYMV(const char *uplo, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  292. MKL_DEPRECATED void MKL_CCOOTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  293. MKL_DEPRECATED void MKL_CSPBLAS_CCOOTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *x, MKL_Complex8 *y);
  294. MKL_DEPRECATED void MKL_CDIAMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *x, const MKL_Complex8 *beta, MKL_Complex8 *y);
  295. MKL_DEPRECATED void MKL_CDIASV (const char *transa, const MKL_INT *m, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *x, MKL_Complex8 *y);
  296. MKL_DEPRECATED void MKL_CDIAGEMV(const char *transa, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *x, MKL_Complex8 *y);
  297. MKL_DEPRECATED void MKL_CDIASYMV(const char *uplo, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *x, MKL_Complex8 *y);
  298. MKL_DEPRECATED void MKL_CDIATRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *x, MKL_Complex8 *y);
  299. MKL_DEPRECATED void MKL_CSKYMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *pntr, const MKL_Complex8 *x, const MKL_Complex8 *beta, MKL_Complex8 *y);
  300. MKL_DEPRECATED void MKL_CSKYSV(const char *transa, const MKL_INT *m, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *pntr, const MKL_Complex8 *x, MKL_Complex8 *y);
  301. MKL_DEPRECATED void MKL_CBSRMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_INT *lb, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *x, const MKL_Complex8 *beta, MKL_Complex8 *y);
  302. MKL_DEPRECATED void MKL_CBSRSV(const char *transa, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *x, MKL_Complex8 *y);
  303. MKL_DEPRECATED void MKL_CBSRGEMV(const char *transa, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  304. MKL_DEPRECATED void MKL_CSPBLAS_CBSRGEMV(const char *transa, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  305. MKL_DEPRECATED void MKL_CBSRSYMV(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  306. MKL_DEPRECATED void MKL_CSPBLAS_CBSRSYMV(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  307. MKL_DEPRECATED void MKL_CBSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  308. MKL_DEPRECATED void MKL_CSPBLAS_CBSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex8 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex8 *x, MKL_Complex8 *y);
  309. /* Sparse BLAS Level3 upper case */
  310. MKL_DEPRECATED void MKL_CCSRMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *b, const MKL_INT *ldb, const MKL_Complex8 *beta, MKL_Complex8 *c, const MKL_INT *ldc);
  311. MKL_DEPRECATED void MKL_CCSRSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *b, const MKL_INT *ldb, MKL_Complex8 *c, const MKL_INT *ldc);
  312. MKL_DEPRECATED void MKL_CCSCMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *b, const MKL_INT *ldb, const MKL_Complex8 *beta, MKL_Complex8 *c, const MKL_INT *ldc);
  313. MKL_DEPRECATED void MKL_CCSCSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *b, const MKL_INT *ldb, MKL_Complex8 *c, const MKL_INT *ldc);
  314. MKL_DEPRECATED void MKL_CCOOMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *b, const MKL_INT *ldb, const MKL_Complex8 *beta, MKL_Complex8 *c, const MKL_INT *ldc);
  315. MKL_DEPRECATED void MKL_CCOOSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex8 *b, const MKL_INT *ldb, MKL_Complex8 *c, const MKL_INT *ldc);
  316. MKL_DEPRECATED void MKL_CDIAMM (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *b, const MKL_INT *ldb, const MKL_Complex8 *beta, MKL_Complex8 *c, const MKL_INT *ldc);
  317. MKL_DEPRECATED void MKL_CDIASM (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex8 *b, const MKL_INT *ldb, MKL_Complex8 *c, const MKL_INT *ldc);
  318. MKL_DEPRECATED void MKL_CSKYSM (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *pntr, const MKL_Complex8 *b, const MKL_INT *ldb, MKL_Complex8 *c, const MKL_INT *ldc);
  319. MKL_DEPRECATED void MKL_CSKYMM (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *pntr, const MKL_Complex8 *b, const MKL_INT *ldb, const MKL_Complex8 *beta, MKL_Complex8 *c, const MKL_INT *ldc);
  320. MKL_DEPRECATED void MKL_CBSRMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_INT *lb, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *b, const MKL_INT *ldb, const MKL_Complex8 *beta, MKL_Complex8 *c, const MKL_INT *ldc);
  321. MKL_DEPRECATED void MKL_CBSRSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *lb, const MKL_Complex8 *alpha, const char *matdescra, const MKL_Complex8 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex8 *b, const MKL_INT *ldb, MKL_Complex8 *c, const MKL_INT *ldc);
  322. /* MKL_Complex16 */
  323. /* Sparse BLAS Level2 lower case */
  324. MKL_DEPRECATED void mkl_zcsrmv(const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *x, const MKL_Complex16 *beta, MKL_Complex16 *y);
  325. MKL_DEPRECATED void mkl_zcsrsv(const char *transa, const MKL_INT *m, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *x, MKL_Complex16 *y);
  326. MKL_DEPRECATED void mkl_zcsrgemv(const char *transa, const MKL_INT *m, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  327. MKL_DEPRECATED void mkl_cspblas_zcsrgemv(const char *transa, const MKL_INT *m, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  328. MKL_DEPRECATED void mkl_zcsrsymv(const char *uplo, const MKL_INT *m, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  329. MKL_DEPRECATED void mkl_cspblas_zcsrsymv(const char *uplo, const MKL_INT *m, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  330. MKL_DEPRECATED void mkl_zcsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  331. MKL_DEPRECATED void mkl_cspblas_zcsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  332. MKL_DEPRECATED void mkl_zcscmv(const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *x, const MKL_Complex16 *beta, MKL_Complex16 *y);
  333. MKL_DEPRECATED void mkl_zcscsv(const char *transa, const MKL_INT *m, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *x, MKL_Complex16 *y);
  334. MKL_DEPRECATED void mkl_zcoomv(const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, const MKL_Complex16 *beta, MKL_Complex16 *y);
  335. MKL_DEPRECATED void mkl_zcoosv(const char *transa, const MKL_INT *m, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  336. MKL_DEPRECATED void mkl_zcoogemv(const char *transa, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  337. MKL_DEPRECATED void mkl_cspblas_zcoogemv(const char *transa, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  338. MKL_DEPRECATED void mkl_zcoosymv(const char *uplo, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  339. MKL_DEPRECATED void mkl_cspblas_zcoosymv(const char *uplo, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  340. MKL_DEPRECATED void mkl_zcootrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  341. MKL_DEPRECATED void mkl_cspblas_zcootrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  342. MKL_DEPRECATED void mkl_zdiamv (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *x, const MKL_Complex16 *beta, MKL_Complex16 *y);
  343. MKL_DEPRECATED void mkl_zdiasv (const char *transa, const MKL_INT *m, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *x, MKL_Complex16 *y);
  344. MKL_DEPRECATED void mkl_zdiagemv(const char *transa, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *x, MKL_Complex16 *y);
  345. MKL_DEPRECATED void mkl_zdiasymv(const char *uplo, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *x, MKL_Complex16 *y);
  346. MKL_DEPRECATED void mkl_zdiatrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *x, MKL_Complex16 *y);
  347. MKL_DEPRECATED void mkl_zskymv (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *pntr, const MKL_Complex16 *x, const MKL_Complex16 *beta, MKL_Complex16 *y);
  348. MKL_DEPRECATED void mkl_zskysv(const char *transa, const MKL_INT *m, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *pntr, const MKL_Complex16 *x, MKL_Complex16 *y);
  349. MKL_DEPRECATED void mkl_zbsrmv (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_INT *lb, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *x, const MKL_Complex16 *beta, MKL_Complex16 *y);
  350. MKL_DEPRECATED void mkl_zbsrsv(const char *transa, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *x, MKL_Complex16 *y);
  351. MKL_DEPRECATED void mkl_zbsrgemv(const char *transa, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  352. MKL_DEPRECATED void mkl_cspblas_zbsrgemv(const char *transa, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  353. MKL_DEPRECATED void mkl_zbsrsymv(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  354. MKL_DEPRECATED void mkl_cspblas_zbsrsymv(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  355. MKL_DEPRECATED void mkl_zbsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  356. MKL_DEPRECATED void mkl_cspblas_zbsrtrsv(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  357. /* Sparse BLAS Level3 lower case */
  358. MKL_DEPRECATED void mkl_zcsrmm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *b, const MKL_INT *ldb, const MKL_Complex16 *beta, MKL_Complex16 *c, const MKL_INT *ldc);
  359. MKL_DEPRECATED void mkl_zcsrsm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *b, const MKL_INT *ldb, MKL_Complex16 *c, const MKL_INT *ldc);
  360. MKL_DEPRECATED void mkl_zcscmm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *b, const MKL_INT *ldb, const MKL_Complex16 *beta, MKL_Complex16 *c, const MKL_INT *ldc);
  361. MKL_DEPRECATED void mkl_zcscsm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *b, const MKL_INT *ldb, MKL_Complex16 *c, const MKL_INT *ldc);
  362. MKL_DEPRECATED void mkl_zcoomm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *b, const MKL_INT *ldb, const MKL_Complex16 *beta, MKL_Complex16 *c, const MKL_INT *ldc);
  363. MKL_DEPRECATED void mkl_zcoosm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *b, const MKL_INT *ldb, MKL_Complex16 *c, const MKL_INT *ldc);
  364. MKL_DEPRECATED void mkl_zdiamm (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *b, const MKL_INT *ldb, const MKL_Complex16 *beta, MKL_Complex16 *c, const MKL_INT *ldc);
  365. MKL_DEPRECATED void mkl_zdiasm (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *b, const MKL_INT *ldb, MKL_Complex16 *c, const MKL_INT *ldc);
  366. MKL_DEPRECATED void mkl_zskysm (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *pntr, const MKL_Complex16 *b, const MKL_INT *ldb, MKL_Complex16 *c, const MKL_INT *ldc);
  367. MKL_DEPRECATED void mkl_zskymm (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *pntr, const MKL_Complex16 *b, const MKL_INT *ldb, const MKL_Complex16 *beta, MKL_Complex16 *c, const MKL_INT *ldc);
  368. MKL_DEPRECATED void mkl_zbsrmm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_INT *lb, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *b, const MKL_INT *ldb, const MKL_Complex16 *beta, MKL_Complex16 *c, const MKL_INT *ldc);
  369. MKL_DEPRECATED void mkl_zbsrsm(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *lb, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *b, const MKL_INT *ldb, MKL_Complex16 *c, const MKL_INT *ldc);
  370. /* Upper case declaration */
  371. /* Sparse BLAS Level2 upper case */
  372. MKL_DEPRECATED void MKL_ZCSRMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *x, const MKL_Complex16 *beta, MKL_Complex16 *y);
  373. MKL_DEPRECATED void MKL_ZCSRSV(const char *transa, const MKL_INT *m, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *x, MKL_Complex16 *y);
  374. MKL_DEPRECATED void MKL_ZCSRGEMV(const char *transa, const MKL_INT *m, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  375. MKL_DEPRECATED void MKL_CSPBLAS_ZCSRGEMV(const char *transa, const MKL_INT *m, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  376. MKL_DEPRECATED void MKL_ZCSRSYMV(const char *uplo, const MKL_INT *m, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  377. MKL_DEPRECATED void MKL_CSPBLAS_ZCSRSYMV(const char *uplo, const MKL_INT *m, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  378. MKL_DEPRECATED void MKL_ZCSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  379. MKL_DEPRECATED void MKL_CSPBLAS_ZCSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  380. MKL_DEPRECATED void MKL_ZCSCMV(const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *x, const MKL_Complex16 *beta, MKL_Complex16 *y);
  381. MKL_DEPRECATED void MKL_ZCSCSV(const char *transa, const MKL_INT *m, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *x, MKL_Complex16 *y);
  382. MKL_DEPRECATED void MKL_ZCOOMV(const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, const MKL_Complex16 *beta, MKL_Complex16 *y);
  383. MKL_DEPRECATED void MKL_ZCOOSV(const char *transa, const MKL_INT *m, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  384. MKL_DEPRECATED void MKL_ZCOOGEMV(const char *transa, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  385. MKL_DEPRECATED void MKL_CSPBLAS_ZCOOGEMV(const char *transa, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  386. MKL_DEPRECATED void MKL_ZCOOSYMV(const char *uplo, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  387. MKL_DEPRECATED void MKL_CSPBLAS_ZCOOSYMV(const char *uplo, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  388. MKL_DEPRECATED void MKL_ZCOOTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  389. MKL_DEPRECATED void MKL_CSPBLAS_ZCOOTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *x, MKL_Complex16 *y);
  390. MKL_DEPRECATED void MKL_ZDIAMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *x, const MKL_Complex16 *beta, MKL_Complex16 *y);
  391. MKL_DEPRECATED void MKL_ZDIASV (const char *transa, const MKL_INT *m, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *x, MKL_Complex16 *y);
  392. MKL_DEPRECATED void MKL_ZDIAGEMV(const char *transa, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *x, MKL_Complex16 *y);
  393. MKL_DEPRECATED void MKL_ZDIASYMV(const char *uplo, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *x, MKL_Complex16 *y);
  394. MKL_DEPRECATED void MKL_ZDIATRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *x, MKL_Complex16 *y);
  395. MKL_DEPRECATED void MKL_ZSKYMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *pntr, const MKL_Complex16 *x, const MKL_Complex16 *beta, MKL_Complex16 *y);
  396. MKL_DEPRECATED void MKL_ZSKYSV(const char *transa, const MKL_INT *m, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *pntr, const MKL_Complex16 *x, MKL_Complex16 *y);
  397. MKL_DEPRECATED void MKL_ZBSRMV (const char *transa, const MKL_INT *m, const MKL_INT *k, const MKL_INT *lb, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *x, const MKL_Complex16 *beta, MKL_Complex16 *y);
  398. MKL_DEPRECATED void MKL_ZBSRSV(const char *transa, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *x, MKL_Complex16 *y);
  399. MKL_DEPRECATED void MKL_ZBSRGEMV(const char *transa, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  400. MKL_DEPRECATED void MKL_CSPBLAS_ZBSRGEMV(const char *transa, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  401. MKL_DEPRECATED void MKL_ZBSRSYMV(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  402. MKL_DEPRECATED void MKL_CSPBLAS_ZBSRSYMV(const char *uplo, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  403. MKL_DEPRECATED void MKL_ZBSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  404. MKL_DEPRECATED void MKL_CSPBLAS_ZBSRTRSV(const char *uplo, const char *transa, const char *diag, const MKL_INT *m, const MKL_INT *lb, const MKL_Complex16 *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_Complex16 *x, MKL_Complex16 *y);
  405. /* Sparse BLAS Level3 upper case */
  406. MKL_DEPRECATED void MKL_ZCSRMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *b, const MKL_INT *ldb, const MKL_Complex16 *beta, MKL_Complex16 *c, const MKL_INT *ldc);
  407. MKL_DEPRECATED void MKL_ZCSRSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *b, const MKL_INT *ldb, MKL_Complex16 *c, const MKL_INT *ldc);
  408. MKL_DEPRECATED void MKL_ZCSCMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *b, const MKL_INT *ldb, const MKL_Complex16 *beta, MKL_Complex16 *c, const MKL_INT *ldc);
  409. MKL_DEPRECATED void MKL_ZCSCSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *b, const MKL_INT *ldb, MKL_Complex16 *c, const MKL_INT *ldc);
  410. MKL_DEPRECATED void MKL_ZCOOMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *b, const MKL_INT *ldb, const MKL_Complex16 *beta, MKL_Complex16 *c, const MKL_INT *ldc);
  411. MKL_DEPRECATED void MKL_ZCOOSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *rowind, const MKL_INT *colind, const MKL_INT *nnz, const MKL_Complex16 *b, const MKL_INT *ldb, MKL_Complex16 *c, const MKL_INT *ldc);
  412. MKL_DEPRECATED void MKL_ZDIAMM (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *b, const MKL_INT *ldb, const MKL_Complex16 *beta, MKL_Complex16 *c, const MKL_INT *ldc);
  413. MKL_DEPRECATED void MKL_ZDIASM (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *lval, const MKL_INT *idiag, const MKL_INT *ndiag, const MKL_Complex16 *b, const MKL_INT *ldb, MKL_Complex16 *c, const MKL_INT *ldc);
  414. MKL_DEPRECATED void MKL_ZSKYSM (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *pntr, const MKL_Complex16 *b, const MKL_INT *ldb, MKL_Complex16 *c, const MKL_INT *ldc);
  415. MKL_DEPRECATED void MKL_ZSKYMM (const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *pntr, const MKL_Complex16 *b, const MKL_INT *ldb, const MKL_Complex16 *beta, MKL_Complex16 *c, const MKL_INT *ldc);
  416. MKL_DEPRECATED void MKL_ZBSRMM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_INT *lb, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *b, const MKL_INT *ldb, const MKL_Complex16 *beta, MKL_Complex16 *c, const MKL_INT *ldc);
  417. MKL_DEPRECATED void MKL_ZBSRSM(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *lb, const MKL_Complex16 *alpha, const char *matdescra, const MKL_Complex16 *val, const MKL_INT *indx, const MKL_INT *pntrb, const MKL_INT *pntre, const MKL_Complex16 *b, const MKL_INT *ldb, MKL_Complex16 *c, const MKL_INT *ldc);
  418. /*Converters lower case*/
  419. MKL_DEPRECATED void mkl_dcsrbsr(const MKL_INT *job, const MKL_INT *m, const MKL_INT *mblk, const MKL_INT *ldAbsr, double *Acsr, MKL_INT *AJ, MKL_INT *AI, double *Absr, MKL_INT *AJB, MKL_INT *AIB, MKL_INT *info);
  420. MKL_DEPRECATED void mkl_dcsrcoo(const MKL_INT *job, const MKL_INT *n, double *Acsr, MKL_INT *AJR, MKL_INT *AIR, MKL_INT *nnz, double *Acoo, MKL_INT *ir, MKL_INT *jc, MKL_INT *info);
  421. MKL_DEPRECATED void mkl_ddnscsr(const MKL_INT *job, const MKL_INT *m, const MKL_INT *n, double *Adns, const MKL_INT *lda, double *Acsr, MKL_INT *AJ, MKL_INT *AI, MKL_INT *info);
  422. MKL_DEPRECATED void mkl_dcsrcsc(const MKL_INT *job, const MKL_INT *n, double *Acsr, MKL_INT *AJ0, MKL_INT *AI0, double *Acsc, MKL_INT *AJ1, MKL_INT *AI1, MKL_INT *info);
  423. MKL_DEPRECATED void mkl_dcsrdia(const MKL_INT *job, const MKL_INT *n, double *Acsr, MKL_INT *AJ0, MKL_INT *AI0, double *Adia, const MKL_INT *ndiag, MKL_INT *distance, MKL_INT *idiag, double *Acsr_rem, MKL_INT *AJ0_rem, MKL_INT *AI0_rem, MKL_INT *info);
  424. MKL_DEPRECATED void mkl_dcsrsky(const MKL_INT *job, const MKL_INT *n, double *Acsr, MKL_INT *AJ0, MKL_INT *AI0, double *Asky, MKL_INT *pointers, MKL_INT *info);
  425. MKL_DEPRECATED void mkl_scsrbsr(const MKL_INT *job, const MKL_INT *m, const MKL_INT *mblk, const MKL_INT *ldAbsr, float *Acsr, MKL_INT *AJ, MKL_INT *AI, float *Absr, MKL_INT *AJB, MKL_INT *AIB, MKL_INT *info);
  426. MKL_DEPRECATED void mkl_scsrcoo(const MKL_INT *job, const MKL_INT *n, float *Acsr, MKL_INT *AJR, MKL_INT *AIR, MKL_INT *nnz, float *Acoo, MKL_INT *ir, MKL_INT *jc, MKL_INT *info);
  427. MKL_DEPRECATED void mkl_sdnscsr(const MKL_INT *job, const MKL_INT *m, const MKL_INT *n, float *Adns, const MKL_INT *lda, float *Acsr, MKL_INT *AJ, MKL_INT *AI, MKL_INT *info);
  428. MKL_DEPRECATED void mkl_scsrcsc(const MKL_INT *job, const MKL_INT *n, float *Acsr, MKL_INT *AJ0, MKL_INT *AI0, float *Acsc, MKL_INT *AJ1, MKL_INT *AI1, MKL_INT *info);
  429. MKL_DEPRECATED void mkl_scsrdia(const MKL_INT *job, const MKL_INT *n, float *Acsr, MKL_INT *AJ0, MKL_INT *AI0, float *Adia, const MKL_INT *ndiag, MKL_INT *distance, MKL_INT *idiag, float *Acsr_rem, MKL_INT *AJ0_rem, MKL_INT *AI0_rem, MKL_INT *info);
  430. MKL_DEPRECATED void mkl_scsrsky(const MKL_INT *job, const MKL_INT *n, float *Acsr, MKL_INT *AJ0, MKL_INT *AI0, float *Asky, MKL_INT *pointers, MKL_INT *info);
  431. MKL_DEPRECATED void mkl_ccsrbsr(const MKL_INT *job, const MKL_INT *m, const MKL_INT *mblk, const MKL_INT *ldAbsr, MKL_Complex8 *Acsr, MKL_INT *AJ, MKL_INT *AI, MKL_Complex8 *Absr, MKL_INT *AJB, MKL_INT *AIB, MKL_INT *info);
  432. MKL_DEPRECATED void mkl_ccsrcoo(const MKL_INT *job, const MKL_INT *n, MKL_Complex8 *Acsr, MKL_INT *AJR, MKL_INT *AIR, MKL_INT *nnz, MKL_Complex8 *Acoo, MKL_INT *ir, MKL_INT *jc, MKL_INT *info);
  433. MKL_DEPRECATED void mkl_cdnscsr(const MKL_INT *job, const MKL_INT *m, const MKL_INT *n, MKL_Complex8 *Adns, const MKL_INT *lda, MKL_Complex8 *Acsr, MKL_INT *AJ, MKL_INT *AI, MKL_INT *info);
  434. MKL_DEPRECATED void mkl_ccsrcsc(const MKL_INT *job, const MKL_INT *n, MKL_Complex8 *Acsr, MKL_INT *AJ0, MKL_INT *AI0, MKL_Complex8 *Acsc, MKL_INT *AJ1, MKL_INT *AI1, MKL_INT *info);
  435. MKL_DEPRECATED void mkl_ccsrdia(const MKL_INT *job, const MKL_INT *n, MKL_Complex8 *Acsr, MKL_INT *AJ0, MKL_INT *AI0, MKL_Complex8 *Adia, const MKL_INT *ndiag, MKL_INT *distance, MKL_INT *idiag, MKL_Complex8 *Acsr_rem, MKL_INT *AJ0_rem, MKL_INT *AI0_rem, MKL_INT *info);
  436. MKL_DEPRECATED void mkl_ccsrsky(const MKL_INT *job, const MKL_INT *n, MKL_Complex8 *Acsr, MKL_INT *AJ0, MKL_INT *AI0, MKL_Complex8 *Asky, MKL_INT *pointers, MKL_INT *info);
  437. MKL_DEPRECATED void mkl_zcsrbsr(const MKL_INT *job, const MKL_INT *m, const MKL_INT *mblk, const MKL_INT *ldAbsr, MKL_Complex16 *Acsr, MKL_INT *AJ, MKL_INT *AI, MKL_Complex16 *Absr, MKL_INT *AJB, MKL_INT *AIB, MKL_INT *info);
  438. MKL_DEPRECATED void mkl_zcsrcoo(const MKL_INT *job, const MKL_INT *n, MKL_Complex16 *Acsr, MKL_INT *AJR, MKL_INT *AIR, MKL_INT *nnz, MKL_Complex16 *Acoo, MKL_INT *ir, MKL_INT *jc, MKL_INT *info);
  439. MKL_DEPRECATED void mkl_zdnscsr(const MKL_INT *job, const MKL_INT *m, const MKL_INT *n, MKL_Complex16 *Adns, const MKL_INT *lda, MKL_Complex16 *Acsr, MKL_INT *AJ, MKL_INT *AI, MKL_INT *info);
  440. MKL_DEPRECATED void mkl_zcsrcsc(const MKL_INT *job, const MKL_INT *n, MKL_Complex16 *Acsr, MKL_INT *AJ0, MKL_INT *AI0, MKL_Complex16 *Acsc, MKL_INT *AJ1, MKL_INT *AI1, MKL_INT *info);
  441. MKL_DEPRECATED void mkl_zcsrdia(const MKL_INT *job, const MKL_INT *n, MKL_Complex16 *Acsr, MKL_INT *AJ0, MKL_INT *AI0, MKL_Complex16 *Adia, const MKL_INT *ndiag, MKL_INT *distance, MKL_INT *idiag, MKL_Complex16 *Acsr_rem, MKL_INT *AJ0_rem, MKL_INT *AI0_rem, MKL_INT *info);
  442. MKL_DEPRECATED void mkl_zcsrsky(const MKL_INT *job, const MKL_INT *n, MKL_Complex16 *Acsr, MKL_INT *AJ0, MKL_INT *AI0, MKL_Complex16 *Asky, MKL_INT *pointers, MKL_INT *info);
  443. /*Converters upper case*/
  444. MKL_DEPRECATED void MKL_DCSRBSR(const MKL_INT *job, const MKL_INT *m, const MKL_INT *mblk, const MKL_INT *ldAbsr, double *Acsr, MKL_INT *AJ, MKL_INT *AI, double *Absr, MKL_INT *AJB, MKL_INT *AIB, MKL_INT *info);
  445. MKL_DEPRECATED void MKL_DCSRCOO(const MKL_INT *job, const MKL_INT *n, double *Acsr, MKL_INT *AJR, MKL_INT *AIR, MKL_INT *nnz, double *Acoo, MKL_INT *ir, MKL_INT *jc, MKL_INT *info);
  446. MKL_DEPRECATED void MKL_DDNSCSR(const MKL_INT *job, const MKL_INT *m, const MKL_INT *n, double *Adns, const MKL_INT *lda, double *Acsr, MKL_INT *AJ, MKL_INT *AI, MKL_INT *info);
  447. MKL_DEPRECATED void MKL_DCSRCSC(const MKL_INT *job, const MKL_INT *n, double *Acsr, MKL_INT *AJ0, MKL_INT *AI0, double *Acsc, MKL_INT *AJ1, MKL_INT *AI1, MKL_INT *info);
  448. MKL_DEPRECATED void MKL_DCSRDIA(const MKL_INT *job, const MKL_INT *n, double *Acsr, MKL_INT *AJ0, MKL_INT *AI0, double *Adia, const MKL_INT *ndiag, MKL_INT *distance, MKL_INT *idiag, double *Acsr_rem, MKL_INT *AJ0_rem, MKL_INT *AI0_rem, MKL_INT *info);
  449. MKL_DEPRECATED void MKL_DCSRSKY(const MKL_INT *job, const MKL_INT *n, double *Acsr, MKL_INT *AJ0, MKL_INT *AI0, double *Asky, MKL_INT *pointers, MKL_INT *info);
  450. MKL_DEPRECATED void MKL_SCSRBSR(const MKL_INT *job, const MKL_INT *m, const MKL_INT *mblk, const MKL_INT *ldAbsr, float *Acsr, MKL_INT *AJ, MKL_INT *AI, float *Absr, MKL_INT *AJB, MKL_INT *AIB, MKL_INT *info);
  451. MKL_DEPRECATED void MKL_SCSRCOO(const MKL_INT *job, const MKL_INT *n, float *Acsr, MKL_INT *AJR, MKL_INT *AIR, MKL_INT *nnz, float *Acoo, MKL_INT *ir, MKL_INT *jc, MKL_INT *info);
  452. MKL_DEPRECATED void MKL_SDNSCSR(const MKL_INT *job, const MKL_INT *m, const MKL_INT *n, float *Adns, const MKL_INT *lda, float *Acsr, MKL_INT *AJ, MKL_INT *AI, MKL_INT *info);
  453. MKL_DEPRECATED void MKL_SCSRCSC(const MKL_INT *job, const MKL_INT *n, float *Acsr, MKL_INT *AJ0, MKL_INT *AI0, float *Acsc, MKL_INT *AJ1, MKL_INT *AI1, MKL_INT *info);
  454. MKL_DEPRECATED void MKL_SCSRDIA(const MKL_INT *job, const MKL_INT *n, float *Acsr, MKL_INT *AJ0, MKL_INT *AI0, float *Adia, const MKL_INT *ndiag, MKL_INT *distance, MKL_INT *idiag, float *Acsr_rem, MKL_INT *AJ0_rem, MKL_INT *AI0_rem, MKL_INT *info);
  455. MKL_DEPRECATED void MKL_SCSRSKY(const MKL_INT *job, const MKL_INT *n, float *Acsr, MKL_INT *AJ0, MKL_INT *AI0, float *Asky, MKL_INT *pointers, MKL_INT *info);
  456. MKL_DEPRECATED void MKL_CCSRBSR(const MKL_INT *job, const MKL_INT *m, const MKL_INT *mblk, const MKL_INT *ldAbsr, MKL_Complex8 *Acsr, MKL_INT *AJ, MKL_INT *AI, MKL_Complex8 *Absr, MKL_INT *AJB, MKL_INT *AIB, MKL_INT *info);
  457. MKL_DEPRECATED void MKL_CCSRCOO(const MKL_INT *job, const MKL_INT *n, MKL_Complex8 *Acsr, MKL_INT *AJR, MKL_INT *AIR, MKL_INT *nnz, MKL_Complex8 *Acoo, MKL_INT *ir, MKL_INT *jc, MKL_INT *info);
  458. MKL_DEPRECATED void MKL_CDNSCSR(const MKL_INT *job, const MKL_INT *m, const MKL_INT *n, MKL_Complex8 *Adns, const MKL_INT *lda, MKL_Complex8 *Acsr, MKL_INT *AJ, MKL_INT *AI, MKL_INT *info);
  459. MKL_DEPRECATED void MKL_CCSRCSC(const MKL_INT *job, const MKL_INT *n, MKL_Complex8 *Acsr, MKL_INT *AJ0, MKL_INT *AI0, MKL_Complex8 *Acsc, MKL_INT *AJ1, MKL_INT *AI1, MKL_INT *info);
  460. MKL_DEPRECATED void MKL_CCSRDIA(const MKL_INT *job, const MKL_INT *n, MKL_Complex8 *Acsr, MKL_INT *AJ0, MKL_INT *AI0, MKL_Complex8 *Adia, const MKL_INT *ndiag, MKL_INT *distance, MKL_INT *idiag, MKL_Complex8 *Acsr_rem, MKL_INT *AJ0_rem, MKL_INT *AI0_rem, MKL_INT *info);
  461. MKL_DEPRECATED void MKL_CCSRSKY(const MKL_INT *job, const MKL_INT *n, MKL_Complex8 *Acsr, MKL_INT *AJ0, MKL_INT *AI0, MKL_Complex8 *Asky, MKL_INT *pointers, MKL_INT *info);
  462. MKL_DEPRECATED void MKL_ZCSRBSR(const MKL_INT *job, const MKL_INT *m, const MKL_INT *mblk, const MKL_INT *ldAbsr, MKL_Complex16 *Acsr, MKL_INT *AJ, MKL_INT *AI, MKL_Complex16 *Absr, MKL_INT *AJB, MKL_INT *AIB, MKL_INT *info);
  463. MKL_DEPRECATED void MKL_ZCSRCOO(const MKL_INT *job, const MKL_INT *n, MKL_Complex16 *Acsr, MKL_INT *AJR, MKL_INT *AIR, MKL_INT *nnz, MKL_Complex16 *Acoo, MKL_INT *ir, MKL_INT *jc, MKL_INT *info);
  464. MKL_DEPRECATED void MKL_ZDNSCSR(const MKL_INT *job, const MKL_INT *m, const MKL_INT *n, MKL_Complex16 *Adns, const MKL_INT *lda, MKL_Complex16 *Acsr, MKL_INT *AJ, MKL_INT *AI, MKL_INT *info);
  465. MKL_DEPRECATED void MKL_ZCSRCSC(const MKL_INT *job, const MKL_INT *n, MKL_Complex16 *Acsr, MKL_INT *AJ0, MKL_INT *AI0, MKL_Complex16 *Acsc, MKL_INT *AJ1, MKL_INT *AI1, MKL_INT *info);
  466. MKL_DEPRECATED void MKL_ZCSRDIA(const MKL_INT *job, const MKL_INT *n, MKL_Complex16 *Acsr, MKL_INT *AJ0, MKL_INT *AI0, MKL_Complex16 *Adia, const MKL_INT *ndiag, MKL_INT *distance, MKL_INT *idiag, MKL_Complex16 *Acsr_rem, MKL_INT *AJ0_rem, MKL_INT *AI0_rem, MKL_INT *info);
  467. MKL_DEPRECATED void MKL_ZCSRSKY(const MKL_INT *job, const MKL_INT *n, MKL_Complex16 *Acsr, MKL_INT *AJ0, MKL_INT *AI0, MKL_Complex16 *Asky, MKL_INT *pointers, MKL_INT *info);
  468. /*Sparse BLAS Level2 (CSR-CSR or CSR-DNS) lower case */
  469. MKL_DEPRECATED void mkl_dcsrmultcsr(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, double *a, MKL_INT *ja, MKL_INT *ia, double *b, MKL_INT *jb, MKL_INT *ib, double *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  470. MKL_DEPRECATED void mkl_dcsrmultd(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, double *a, MKL_INT *ja, MKL_INT *ia, double *b, MKL_INT *jb, MKL_INT *ib, double *c, MKL_INT *ldc);
  471. MKL_DEPRECATED void mkl_dcsradd(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, double *a, MKL_INT *ja, MKL_INT *ia, const double *beta, double *b, MKL_INT *jb, MKL_INT *ib, double *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  472. MKL_DEPRECATED void mkl_scsrmultcsr(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, float *a, MKL_INT *ja, MKL_INT *ia, float *b, MKL_INT *jb, MKL_INT *ib, float *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  473. MKL_DEPRECATED void mkl_scsrmultd(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, float *a, MKL_INT *ja, MKL_INT *ia, float *b, MKL_INT *jb, MKL_INT *ib, float *c, MKL_INT *ldc);
  474. MKL_DEPRECATED void mkl_scsradd(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, float *a, MKL_INT *ja, MKL_INT *ia, const float *beta, float *b, MKL_INT *jb, MKL_INT *ib, float *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  475. MKL_DEPRECATED void mkl_ccsrmultcsr(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, MKL_Complex8 *a, MKL_INT *ja, MKL_INT *ia, MKL_Complex8 *b, MKL_INT *jb, MKL_INT *ib, MKL_Complex8 *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  476. MKL_DEPRECATED void mkl_ccsrmultd(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, MKL_Complex8 *a, MKL_INT *ja, MKL_INT *ia, MKL_Complex8 *b, MKL_INT *jb, MKL_INT *ib, MKL_Complex8 *c, MKL_INT *ldc);
  477. MKL_DEPRECATED void mkl_ccsradd(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, MKL_Complex8 *a, MKL_INT *ja, MKL_INT *ia, const MKL_Complex8 *beta, MKL_Complex8 *b, MKL_INT *jb, MKL_INT *ib, MKL_Complex8 *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  478. MKL_DEPRECATED void mkl_zcsrmultcsr(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, MKL_Complex16 *a, MKL_INT *ja, MKL_INT *ia, MKL_Complex16 *b, MKL_INT *jb, MKL_INT *ib, MKL_Complex16 *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  479. MKL_DEPRECATED void mkl_zcsrmultd(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, MKL_Complex16 *a, MKL_INT *ja, MKL_INT *ia, MKL_Complex16 *b, MKL_INT *jb, MKL_INT *ib, MKL_Complex16 *c, MKL_INT *ldc);
  480. MKL_DEPRECATED void mkl_zcsradd(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, MKL_Complex16 *a, MKL_INT *ja, MKL_INT *ia, const MKL_Complex16 *beta, MKL_Complex16 *b, MKL_INT *jb, MKL_INT *ib, MKL_Complex16 *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  481. /*Sparse BLAS Level2 (CSR-CSR or CSR-DNS) upper case */
  482. MKL_DEPRECATED void MKL_DCSRMULTCSR(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, double *a, MKL_INT *ja, MKL_INT *ia, double *b, MKL_INT *jb, MKL_INT *ib, double *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  483. MKL_DEPRECATED void MKL_DCSRMULTD(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, double *a, MKL_INT *ja, MKL_INT *ia, double *b, MKL_INT *jb, MKL_INT *ib, double *c, MKL_INT *ldc);
  484. MKL_DEPRECATED void MKL_DCSRADD(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, double *a, MKL_INT *ja, MKL_INT *ia, const double *beta, double *b, MKL_INT *jb, MKL_INT *ib, double *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  485. MKL_DEPRECATED void MKL_SCSRMULTCSR(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, float *a, MKL_INT *ja, MKL_INT *ia, float *b, MKL_INT *jb, MKL_INT *ib, float *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  486. MKL_DEPRECATED void MKL_SCSRMULTD(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, float *a, MKL_INT *ja, MKL_INT *ia, float *b, MKL_INT *jb, MKL_INT *ib, float *c, MKL_INT *ldc);
  487. MKL_DEPRECATED void MKL_SCSRADD(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, float *a, MKL_INT *ja, MKL_INT *ia, const float *beta, float *b, MKL_INT *jb, MKL_INT *ib, float *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  488. MKL_DEPRECATED void MKL_CCSRMULTCSR(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, MKL_Complex8 *a, MKL_INT *ja, MKL_INT *ia, MKL_Complex8 *b, MKL_INT *jb, MKL_INT *ib, MKL_Complex8 *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  489. MKL_DEPRECATED void MKL_CCSRMULTD(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, MKL_Complex8 *a, MKL_INT *ja, MKL_INT *ia, MKL_Complex8 *b, MKL_INT *jb, MKL_INT *ib, MKL_Complex8 *c, MKL_INT *ldc);
  490. MKL_DEPRECATED void MKL_CCSRADD(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, MKL_Complex8 *a, MKL_INT *ja, MKL_INT *ia, const MKL_Complex8 *beta, MKL_Complex8 *b, MKL_INT *jb, MKL_INT *ib, MKL_Complex8 *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  491. MKL_DEPRECATED void MKL_ZCSRMULTCSR(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, MKL_Complex16 *a, MKL_INT *ja, MKL_INT *ia, MKL_Complex16 *b, MKL_INT *jb, MKL_INT *ib, MKL_Complex16 *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  492. MKL_DEPRECATED void MKL_ZCSRMULTD(const char *transa, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, MKL_Complex16 *a, MKL_INT *ja, MKL_INT *ia, MKL_Complex16 *b, MKL_INT *jb, MKL_INT *ib, MKL_Complex16 *c, MKL_INT *ldc);
  493. MKL_DEPRECATED void MKL_ZCSRADD(const char *transa, const MKL_INT *job, const MKL_INT *sort, const MKL_INT *m, const MKL_INT *n, MKL_Complex16 *a, MKL_INT *ja, MKL_INT *ia, const MKL_Complex16 *beta, MKL_Complex16 *b, MKL_INT *jb, MKL_INT *ib, MKL_Complex16 *c, MKL_INT *jc, MKL_INT *ic, const MKL_INT *nnzmax, MKL_INT *ierr);
  494. /*****************************************************************************************/
  495. /************** Basic types and constants for inspector-executor SpBLAS API **************/
  496. /*****************************************************************************************/
  497. /* status of the routines */
  498. typedef enum
  499. {
  500. SPARSE_STATUS_SUCCESS = 0, /* the operation was successful */
  501. SPARSE_STATUS_NOT_INITIALIZED = 1, /* empty handle or matrix arrays */
  502. SPARSE_STATUS_ALLOC_FAILED = 2, /* internal error: memory allocation failed */
  503. SPARSE_STATUS_INVALID_VALUE = 3, /* invalid input value */
  504. SPARSE_STATUS_EXECUTION_FAILED = 4, /* e.g. 0-diagonal element for triangular solver, etc. */
  505. SPARSE_STATUS_INTERNAL_ERROR = 5, /* internal error */
  506. SPARSE_STATUS_NOT_SUPPORTED = 6 /* e.g. operation for double precision doesn't support other types */
  507. } sparse_status_t;
  508. /* sparse matrix operations */
  509. typedef enum
  510. {
  511. SPARSE_OPERATION_NON_TRANSPOSE = 10,
  512. SPARSE_OPERATION_TRANSPOSE = 11,
  513. SPARSE_OPERATION_CONJUGATE_TRANSPOSE = 12
  514. } sparse_operation_t;
  515. /* supported matrix types */
  516. typedef enum
  517. {
  518. SPARSE_MATRIX_TYPE_GENERAL = 20, /* General case */
  519. SPARSE_MATRIX_TYPE_SYMMETRIC = 21, /* Triangular part of */
  520. SPARSE_MATRIX_TYPE_HERMITIAN = 22, /* the matrix is to be processed */
  521. SPARSE_MATRIX_TYPE_TRIANGULAR = 23,
  522. SPARSE_MATRIX_TYPE_DIAGONAL = 24, /* diagonal matrix; only diagonal elements will be processed */
  523. SPARSE_MATRIX_TYPE_BLOCK_TRIANGULAR = 25,
  524. SPARSE_MATRIX_TYPE_BLOCK_DIAGONAL = 26 /* block-diagonal matrix; only diagonal blocks will be processed */
  525. } sparse_matrix_type_t;
  526. /* sparse matrix indexing: C-style or Fortran-style */
  527. typedef enum
  528. {
  529. SPARSE_INDEX_BASE_ZERO = 0, /* C-style */
  530. SPARSE_INDEX_BASE_ONE = 1 /* Fortran-style */
  531. } sparse_index_base_t;
  532. /* applies to triangular matrices only ( SPARSE_MATRIX_TYPE_SYMMETRIC, SPARSE_MATRIX_TYPE_HERMITIAN, SPARSE_MATRIX_TYPE_TRIANGULAR ) */
  533. typedef enum
  534. {
  535. SPARSE_FILL_MODE_LOWER = 40, /* lower triangular part of the matrix is stored */
  536. SPARSE_FILL_MODE_UPPER = 41, /* upper triangular part of the matrix is stored */
  537. SPARSE_FILL_MODE_FULL = 42 /* upper triangular part of the matrix is stored */
  538. } sparse_fill_mode_t;
  539. /* applies to triangular matrices only ( SPARSE_MATRIX_TYPE_SYMMETRIC, SPARSE_MATRIX_TYPE_HERMITIAN, SPARSE_MATRIX_TYPE_TRIANGULAR ) */
  540. typedef enum
  541. {
  542. SPARSE_DIAG_NON_UNIT = 50, /* triangular matrix with non-unit diagonal */
  543. SPARSE_DIAG_UNIT = 51 /* triangular matrix with unit diagonal */
  544. } sparse_diag_type_t;
  545. /* applicable for Level 3 operations with dense matrices; describes storage scheme for dense matrix (row major or column major) */
  546. typedef enum
  547. {
  548. SPARSE_LAYOUT_ROW_MAJOR = 101, /* C-style */
  549. SPARSE_LAYOUT_COLUMN_MAJOR = 102 /* Fortran-style */
  550. } sparse_layout_t;
  551. /* verbose mode; if verbose mode activated, handle should collect and report profiling / optimization info */
  552. typedef enum
  553. {
  554. SPARSE_VERBOSE_OFF = 70,
  555. SPARSE_VERBOSE_BASIC = 71, /* output contains high-level information about optimization algorithms, issues, etc. */
  556. SPARSE_VERBOSE_EXTENDED = 72 /* provide detailed output information */
  557. } verbose_mode_t;
  558. /* memory optimization hints from user: describe how much memory could be used on optimization stage */
  559. typedef enum
  560. {
  561. SPARSE_MEMORY_NONE = 80, /* no memory should be allocated for matrix values and structures; auxiliary structures could be created only for workload balancing, parallelization, etc. */
  562. SPARSE_MEMORY_AGGRESSIVE = 81 /* matrix could be converted to any internal format */
  563. } sparse_memory_usage_t;
  564. typedef enum
  565. {
  566. SPARSE_STAGE_FULL_MULT = 90,
  567. SPARSE_STAGE_NNZ_COUNT = 91,
  568. SPARSE_STAGE_FINALIZE_MULT = 92,
  569. SPARSE_STAGE_FULL_MULT_NO_VAL = 93,
  570. SPARSE_STAGE_FINALIZE_MULT_NO_VAL = 94
  571. } sparse_request_t;
  572. /* applies to SOR interface; define type of (S)SOR operation to perform */
  573. typedef enum
  574. {
  575. SPARSE_SOR_FORWARD = 110, /* (omega∗L + D)∗x^1 = (D - omega*D - omega*U)∗alpha*x^0 + omega*b */
  576. SPARSE_SOR_BACKWARD = 111, /* (omega∗U + D)∗x^1 = (D - omega*D - omega*L)∗alpha*x^0 + omega*b */
  577. SPARSE_SOR_SYMMETRIC = 112 /* SSOR, for e.g. with omega == 1 && alpha == 1, equal to solving a system:
  578. (L + D)∗x^1 = b - U*x; (U + D)∗x = b - L*x^1 */
  579. } sparse_sor_type_t;
  580. /*************************************************************************************************/
  581. /*** Opaque structure for sparse matrix in internal format, further D - means double precision ***/
  582. /*************************************************************************************************/
  583. struct sparse_matrix;
  584. typedef struct sparse_matrix *sparse_matrix_t;
  585. /* descriptor of main sparse matrix properties */
  586. struct matrix_descr {
  587. sparse_matrix_type_t type; /* matrix type: general, diagonal or triangular / symmetric / hermitian */
  588. sparse_fill_mode_t mode; /* upper or lower triangular part of the matrix ( for triangular / symmetric / hermitian case) */
  589. sparse_diag_type_t diag; /* unit or non-unit diagonal ( for triangular / symmetric / hermitian case) */
  590. };
  591. /*****************************************************************************************/
  592. /*************************************** Creation routines *******************************/
  593. /*****************************************************************************************/
  594. /*
  595. Matrix handle is used for storing information about the matrix and matrix values
  596. Create matrix from one of the existing sparse formats by creating the handle with matrix info and copy matrix values if requested.
  597. Collect high-level info about the matrix. Need to use this interface for the case with several calls in program for performance reasons,
  598. where optimizations are not required.
  599. coordinate format,
  600. SPARSE_MATRIX_TYPE_GENERAL by default, pointers to input arrays are stored in the handle
  601. *** User data is not marked const since the mkl_sparse_order() or mkl_sparse_?_set_values()
  602. functionality could change user data. However, this is only done by a user call.
  603. Internally const-ness of user data is maintained other than through explicit
  604. use of these interfaces.
  605. */
  606. sparse_status_t mkl_sparse_s_create_coo( sparse_matrix_t *A,
  607. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  608. const MKL_INT rows,
  609. const MKL_INT cols,
  610. const MKL_INT nnz,
  611. MKL_INT *row_indx,
  612. MKL_INT *col_indx,
  613. float *values );
  614. sparse_status_t mkl_sparse_d_create_coo( sparse_matrix_t *A,
  615. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  616. const MKL_INT rows,
  617. const MKL_INT cols,
  618. const MKL_INT nnz,
  619. MKL_INT *row_indx,
  620. MKL_INT *col_indx,
  621. double *values );
  622. sparse_status_t mkl_sparse_c_create_coo( sparse_matrix_t *A,
  623. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  624. const MKL_INT rows,
  625. const MKL_INT cols,
  626. const MKL_INT nnz,
  627. MKL_INT *row_indx,
  628. MKL_INT *col_indx,
  629. MKL_Complex8 *values );
  630. sparse_status_t mkl_sparse_z_create_coo( sparse_matrix_t *A,
  631. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  632. const MKL_INT rows,
  633. const MKL_INT cols,
  634. const MKL_INT nnz,
  635. MKL_INT *row_indx,
  636. MKL_INT *col_indx,
  637. MKL_Complex16 *values );
  638. /*
  639. compressed sparse row format (4-arrays version),
  640. SPARSE_MATRIX_TYPE_GENERAL by default, pointers to input arrays are stored in the handle
  641. *** User data is not marked const since the mkl_sparse_order() or mkl_sparse_?_set_values()
  642. functionality could change user data. However, this is only done by a user call.
  643. Internally const-ness of user data is maintained other than through explicit
  644. use of these interfaces.
  645. */
  646. sparse_status_t mkl_sparse_s_create_csr( sparse_matrix_t *A,
  647. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  648. const MKL_INT rows,
  649. const MKL_INT cols,
  650. MKL_INT *rows_start,
  651. MKL_INT *rows_end,
  652. MKL_INT *col_indx,
  653. float *values );
  654. sparse_status_t mkl_sparse_d_create_csr( sparse_matrix_t *A,
  655. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  656. const MKL_INT rows,
  657. const MKL_INT cols,
  658. MKL_INT *rows_start,
  659. MKL_INT *rows_end,
  660. MKL_INT *col_indx,
  661. double *values );
  662. sparse_status_t mkl_sparse_c_create_csr( sparse_matrix_t *A,
  663. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  664. const MKL_INT rows,
  665. const MKL_INT cols,
  666. MKL_INT *rows_start,
  667. MKL_INT *rows_end,
  668. MKL_INT *col_indx,
  669. MKL_Complex8 *values );
  670. sparse_status_t mkl_sparse_z_create_csr( sparse_matrix_t *A,
  671. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  672. const MKL_INT rows,
  673. const MKL_INT cols,
  674. MKL_INT *rows_start,
  675. MKL_INT *rows_end,
  676. MKL_INT *col_indx,
  677. MKL_Complex16 *values );
  678. /*
  679. compressed sparse column format (4-arrays version),
  680. SPARSE_MATRIX_TYPE_GENERAL by default, pointers to input arrays are stored in the handle
  681. *** User data is not marked const since the mkl_sparse_order() or mkl_sparse_?_set_values()
  682. functionality could change user data. However, this is only done by a user call.
  683. Internally const-ness of user data is maintained other than through explicit
  684. use of these interfaces.
  685. */
  686. sparse_status_t mkl_sparse_s_create_csc( sparse_matrix_t *A,
  687. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  688. const MKL_INT rows,
  689. const MKL_INT cols,
  690. MKL_INT *cols_start,
  691. MKL_INT *cols_end,
  692. MKL_INT *row_indx,
  693. float *values );
  694. sparse_status_t mkl_sparse_d_create_csc( sparse_matrix_t *A,
  695. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  696. const MKL_INT rows,
  697. const MKL_INT cols,
  698. MKL_INT *cols_start,
  699. MKL_INT *cols_end,
  700. MKL_INT *row_indx,
  701. double *values );
  702. sparse_status_t mkl_sparse_c_create_csc( sparse_matrix_t *A,
  703. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  704. const MKL_INT rows,
  705. const MKL_INT cols,
  706. MKL_INT *cols_start,
  707. MKL_INT *cols_end,
  708. MKL_INT *row_indx,
  709. MKL_Complex8 *values );
  710. sparse_status_t mkl_sparse_z_create_csc( sparse_matrix_t *A,
  711. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  712. const MKL_INT rows,
  713. const MKL_INT cols,
  714. MKL_INT *cols_start,
  715. MKL_INT *cols_end,
  716. MKL_INT *row_indx,
  717. MKL_Complex16 *values );
  718. /*
  719. compressed block sparse row format (4-arrays version, square blocks),
  720. SPARSE_MATRIX_TYPE_GENERAL by default, pointers to input arrays are stored in the handle
  721. *** User data is not marked const since the mkl_sparse_order() or mkl_sparse_?_set_values()
  722. functionality could change user data. However, this is only done by a user call.
  723. Internally const-ness of user data is maintained other than through explicit
  724. use of these interfaces.
  725. */
  726. sparse_status_t mkl_sparse_s_create_bsr( sparse_matrix_t *A,
  727. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  728. const sparse_layout_t block_layout, /* block storage: row-major or column-major */
  729. const MKL_INT rows,
  730. const MKL_INT cols,
  731. const MKL_INT block_size,
  732. MKL_INT *rows_start,
  733. MKL_INT *rows_end,
  734. MKL_INT *col_indx,
  735. float *values );
  736. sparse_status_t mkl_sparse_d_create_bsr( sparse_matrix_t *A,
  737. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  738. const sparse_layout_t block_layout, /* block storage: row-major or column-major */
  739. const MKL_INT rows,
  740. const MKL_INT cols,
  741. const MKL_INT block_size,
  742. MKL_INT *rows_start,
  743. MKL_INT *rows_end,
  744. MKL_INT *col_indx,
  745. double *values );
  746. sparse_status_t mkl_sparse_c_create_bsr( sparse_matrix_t *A,
  747. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  748. const sparse_layout_t block_layout, /* block storage: row-major or column-major */
  749. const MKL_INT rows,
  750. const MKL_INT cols,
  751. const MKL_INT block_size,
  752. MKL_INT *rows_start,
  753. MKL_INT *rows_end,
  754. MKL_INT *col_indx,
  755. MKL_Complex8 *values );
  756. sparse_status_t mkl_sparse_z_create_bsr( sparse_matrix_t *A,
  757. const sparse_index_base_t indexing, /* indexing: C-style or Fortran-style */
  758. const sparse_layout_t block_layout, /* block storage: row-major or column-major */
  759. const MKL_INT rows,
  760. const MKL_INT cols,
  761. const MKL_INT block_size,
  762. MKL_INT *rows_start,
  763. MKL_INT *rows_end,
  764. MKL_INT *col_indx,
  765. MKL_Complex16 *values );
  766. /*
  767. Create copy of the existing handle; matrix properties could be changed.
  768. For example it could be used for extracting triangular or diagonal parts from existing matrix.
  769. */
  770. sparse_status_t mkl_sparse_copy( const sparse_matrix_t source,
  771. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  772. sparse_matrix_t *dest );
  773. /*
  774. destroy matrix handle; if sparse matrix was stored inside the handle it also deallocates the matrix
  775. It is user's responsibility not to delete the handle with the matrix, if this matrix is shared with other handles
  776. */
  777. sparse_status_t mkl_sparse_destroy( sparse_matrix_t A );
  778. /*
  779. return extended error information from last operation;
  780. e.g. info about wrong input parameter, memory sizes that couldn't be allocated
  781. */
  782. sparse_status_t mkl_sparse_get_error_info( sparse_matrix_t A, MKL_INT *info ); /* unsupported currently */
  783. /*****************************************************************************************/
  784. /************************ Converters of internal representation *************************/
  785. /*****************************************************************************************/
  786. /* converters from current format to another */
  787. sparse_status_t mkl_sparse_convert_csr ( const sparse_matrix_t source, /* convert original matrix to CSR representation */
  788. const sparse_operation_t operation, /* as is, transposed or conjugate transposed */
  789. sparse_matrix_t *dest );
  790. sparse_status_t mkl_sparse_convert_bsr ( const sparse_matrix_t source, /* convert original matrix to BSR representation */
  791. const MKL_INT block_size,
  792. const sparse_layout_t block_layout, /* block storage: row-major or column-major */
  793. const sparse_operation_t operation, /* as is, transposed or conjugate transposed */
  794. sparse_matrix_t *dest );
  795. sparse_status_t mkl_sparse_s_export_bsr( const sparse_matrix_t source,
  796. sparse_index_base_t *indexing, /* indexing: C-style or Fortran-style */
  797. sparse_layout_t *block_layout, /* block storage: row-major or column-major */
  798. MKL_INT *rows,
  799. MKL_INT *cols,
  800. MKL_INT *block_size,
  801. MKL_INT **rows_start,
  802. MKL_INT **rows_end,
  803. MKL_INT **col_indx,
  804. float **values );
  805. sparse_status_t mkl_sparse_d_export_bsr( const sparse_matrix_t source,
  806. sparse_index_base_t *indexing, /* indexing: C-style or Fortran-style */
  807. sparse_layout_t *block_layout, /* block storage: row-major or column-major */
  808. MKL_INT *rows,
  809. MKL_INT *cols,
  810. MKL_INT *block_size,
  811. MKL_INT **rows_start,
  812. MKL_INT **rows_end,
  813. MKL_INT **col_indx,
  814. double **values );
  815. sparse_status_t mkl_sparse_c_export_bsr( const sparse_matrix_t source,
  816. sparse_index_base_t *indexing, /* indexing: C-style or Fortran-style */
  817. sparse_layout_t *block_layout, /* block storage: row-major or column-major */
  818. MKL_INT *rows,
  819. MKL_INT *cols,
  820. MKL_INT *block_size,
  821. MKL_INT **rows_start,
  822. MKL_INT **rows_end,
  823. MKL_INT **col_indx,
  824. MKL_Complex8 **values );
  825. sparse_status_t mkl_sparse_z_export_bsr( const sparse_matrix_t source,
  826. sparse_index_base_t *indexing, /* indexing: C-style or Fortran-style */
  827. sparse_layout_t *block_layout, /* block storage: row-major or column-major */
  828. MKL_INT *rows,
  829. MKL_INT *cols,
  830. MKL_INT *block_size,
  831. MKL_INT **rows_start,
  832. MKL_INT **rows_end,
  833. MKL_INT **col_indx,
  834. MKL_Complex16 **values );
  835. sparse_status_t mkl_sparse_s_export_csr( const sparse_matrix_t source,
  836. sparse_index_base_t *indexing, /* indexing: C-style or Fortran-style */
  837. MKL_INT *rows,
  838. MKL_INT *cols,
  839. MKL_INT **rows_start,
  840. MKL_INT **rows_end,
  841. MKL_INT **col_indx,
  842. float **values );
  843. sparse_status_t mkl_sparse_d_export_csr( const sparse_matrix_t source,
  844. sparse_index_base_t *indexing, /* indexing: C-style or Fortran-style */
  845. MKL_INT *rows,
  846. MKL_INT *cols,
  847. MKL_INT **rows_start,
  848. MKL_INT **rows_end,
  849. MKL_INT **col_indx,
  850. double **values );
  851. sparse_status_t mkl_sparse_c_export_csr( const sparse_matrix_t source,
  852. sparse_index_base_t *indexing, /* indexing: C-style or Fortran-style */
  853. MKL_INT *rows,
  854. MKL_INT *cols,
  855. MKL_INT **rows_start,
  856. MKL_INT **rows_end,
  857. MKL_INT **col_indx,
  858. MKL_Complex8 **values );
  859. sparse_status_t mkl_sparse_z_export_csr( const sparse_matrix_t source,
  860. sparse_index_base_t *indexing, /* indexing: C-style or Fortran-style */
  861. MKL_INT *rows,
  862. MKL_INT *cols,
  863. MKL_INT **rows_start,
  864. MKL_INT **rows_end,
  865. MKL_INT **col_indx,
  866. MKL_Complex16 **values );
  867. sparse_status_t mkl_sparse_s_export_csc( const sparse_matrix_t source,
  868. sparse_index_base_t *indexing, /* indexing: C-style or Fortran-style */
  869. MKL_INT *rows,
  870. MKL_INT *cols,
  871. MKL_INT **cols_start,
  872. MKL_INT **cols_end,
  873. MKL_INT **row_indx,
  874. float **values );
  875. sparse_status_t mkl_sparse_d_export_csc( const sparse_matrix_t source,
  876. sparse_index_base_t *indexing, /* indexing: C-style or Fortran-style */
  877. MKL_INT *rows,
  878. MKL_INT *cols,
  879. MKL_INT **cols_start,
  880. MKL_INT **cols_end,
  881. MKL_INT **row_indx,
  882. double **values );
  883. sparse_status_t mkl_sparse_c_export_csc( const sparse_matrix_t source,
  884. sparse_index_base_t *indexing, /* indexing: C-style or Fortran-style */
  885. MKL_INT *rows,
  886. MKL_INT *cols,
  887. MKL_INT **cols_start,
  888. MKL_INT **cols_end,
  889. MKL_INT **row_indx,
  890. MKL_Complex8 **values );
  891. sparse_status_t mkl_sparse_z_export_csc( const sparse_matrix_t source,
  892. sparse_index_base_t *indexing, /* indexing: C-style or Fortran-style */
  893. MKL_INT *rows,
  894. MKL_INT *cols,
  895. MKL_INT **cols_start,
  896. MKL_INT **cols_end,
  897. MKL_INT **row_indx,
  898. MKL_Complex16 **values );
  899. /*****************************************************************************************/
  900. /************************** Step-by-step modification routines ***************************/
  901. /*****************************************************************************************/
  902. /* update existing value in the matrix ( for internal storage only, should not work with user-allocated matrices) */
  903. sparse_status_t mkl_sparse_s_set_value( const sparse_matrix_t A,
  904. const MKL_INT row,
  905. const MKL_INT col,
  906. const float value );
  907. sparse_status_t mkl_sparse_d_set_value( const sparse_matrix_t A,
  908. const MKL_INT row,
  909. const MKL_INT col,
  910. const double value );
  911. sparse_status_t mkl_sparse_c_set_value( const sparse_matrix_t A,
  912. const MKL_INT row,
  913. const MKL_INT col,
  914. const MKL_Complex8 value );
  915. sparse_status_t mkl_sparse_z_set_value( const sparse_matrix_t A,
  916. const MKL_INT row,
  917. const MKL_INT col,
  918. const MKL_Complex16 value );
  919. /* update existing values in the matrix for internal storage only
  920. can be used to either update all or selected values */
  921. sparse_status_t mkl_sparse_s_update_values( const sparse_matrix_t A,
  922. const MKL_INT nvalues,
  923. const MKL_INT *indx,
  924. const MKL_INT *indy,
  925. float *values );
  926. sparse_status_t mkl_sparse_d_update_values( const sparse_matrix_t A,
  927. const MKL_INT nvalues,
  928. const MKL_INT *indx,
  929. const MKL_INT *indy,
  930. double *values );
  931. sparse_status_t mkl_sparse_c_update_values( const sparse_matrix_t A,
  932. const MKL_INT nvalues,
  933. const MKL_INT *indx,
  934. const MKL_INT *indy,
  935. MKL_Complex8 *values );
  936. sparse_status_t mkl_sparse_z_update_values( const sparse_matrix_t A,
  937. const MKL_INT nvalues,
  938. const MKL_INT *indx,
  939. const MKL_INT *indy,
  940. MKL_Complex16 *values );
  941. /*****************************************************************************************/
  942. /****************************** Verbose mode routine *************************************/
  943. /*****************************************************************************************/
  944. /* allow to switch on/off verbose mode */
  945. sparse_status_t mkl_sparse_set_verbose_mode ( verbose_mode_t verbose ); /* unsupported currently */
  946. /*****************************************************************************************/
  947. /****************************** Optimization routines ************************************/
  948. /*****************************************************************************************/
  949. /* Describe expected operations with amount of iterations */
  950. sparse_status_t mkl_sparse_set_mv_hint ( const sparse_matrix_t A,
  951. const sparse_operation_t operation, /* SPARSE_OPERATION_NON_TRANSPOSE is default value for infinite amount of calls */
  952. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  953. const MKL_INT expected_calls );
  954. sparse_status_t mkl_sparse_set_dotmv_hint ( const sparse_matrix_t A,
  955. const sparse_operation_t operation, /* SPARSE_OPERATION_NON_TRANSPOSE is default value for infinite amount of calls */
  956. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  957. const MKL_INT expectedCalls );
  958. sparse_status_t mkl_sparse_set_mm_hint ( const sparse_matrix_t A,
  959. const sparse_operation_t operation,
  960. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  961. const sparse_layout_t layout, /* storage scheme for the dense matrix: C-style or Fortran-style */
  962. const MKL_INT dense_matrix_size, /* amount of columns in dense matrix */
  963. const MKL_INT expected_calls );
  964. sparse_status_t mkl_sparse_set_sv_hint ( const sparse_matrix_t A,
  965. const sparse_operation_t operation, /* SPARSE_OPERATION_NON_TRANSPOSE is default value for infinite amount of calls */
  966. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  967. const MKL_INT expected_calls );
  968. sparse_status_t mkl_sparse_set_sm_hint ( const sparse_matrix_t A,
  969. const sparse_operation_t operation,
  970. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  971. const sparse_layout_t layout, /* storage scheme for the dense matrix: C-style or Fortran-style */
  972. const MKL_INT dense_matrix_size, /* amount of columns in dense matrix */
  973. const MKL_INT expected_calls );
  974. sparse_status_t mkl_sparse_set_symgs_hint ( const sparse_matrix_t A,
  975. const sparse_operation_t operation, /* SPARSE_OPERATION_NON_TRANSPOSE is default value for infinite amount of calls */
  976. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  977. const MKL_INT expected_calls );
  978. sparse_status_t mkl_sparse_set_lu_smoother_hint( const sparse_matrix_t A,
  979. const sparse_operation_t operation,
  980. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  981. const MKL_INT expectedCalls );
  982. sparse_status_t mkl_sparse_set_sorv_hint( const sparse_sor_type_t type, /* choice of forward, backward sweep or SSOR operation */
  983. const sparse_matrix_t A,
  984. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  985. const MKL_INT expectedCalls );
  986. /* Describe memory usage model */
  987. sparse_status_t mkl_sparse_set_memory_hint ( const sparse_matrix_t A,
  988. const sparse_memory_usage_t policy ); /* SPARSE_MEMORY_AGGRESSIVE is default value */
  989. /*
  990. Optimize matrix described by the handle. It uses hints (optimization and memory) that should be set up before this call.
  991. If hints were not explicitly defined, default vales are:
  992. SPARSE_OPERATION_NON_TRANSPOSE for matrix-vector multiply with infinite number of expected iterations.
  993. */
  994. sparse_status_t mkl_sparse_optimize ( sparse_matrix_t A );
  995. /*****************************************************************************************/
  996. /****************************** Computational routines ***********************************/
  997. /*****************************************************************************************/
  998. sparse_status_t mkl_sparse_order( const sparse_matrix_t A );
  999. /*
  1000. Perform computations based on created matrix handle
  1001. Level 2
  1002. */
  1003. /* Computes y = alpha * A * x + beta * y */
  1004. sparse_status_t mkl_sparse_s_mv ( const sparse_operation_t operation,
  1005. const float alpha,
  1006. const sparse_matrix_t A,
  1007. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1008. const float *x,
  1009. const float beta,
  1010. float *y );
  1011. sparse_status_t mkl_sparse_d_mv ( const sparse_operation_t operation,
  1012. const double alpha,
  1013. const sparse_matrix_t A,
  1014. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1015. const double *x,
  1016. const double beta,
  1017. double *y );
  1018. sparse_status_t mkl_sparse_c_mv ( const sparse_operation_t operation,
  1019. const MKL_Complex8 alpha,
  1020. const sparse_matrix_t A,
  1021. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1022. const MKL_Complex8 *x,
  1023. const MKL_Complex8 beta,
  1024. MKL_Complex8 *y );
  1025. sparse_status_t mkl_sparse_z_mv ( const sparse_operation_t operation,
  1026. const MKL_Complex16 alpha,
  1027. const sparse_matrix_t A,
  1028. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1029. const MKL_Complex16 *x,
  1030. const MKL_Complex16 beta,
  1031. MKL_Complex16 *y );
  1032. /* Computes y = alpha * A * x + beta * y and d = <x, y> , the l2 inner product */
  1033. sparse_status_t mkl_sparse_s_dotmv( const sparse_operation_t transA,
  1034. const float alpha,
  1035. const sparse_matrix_t A,
  1036. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1037. const float *x,
  1038. const float beta,
  1039. float *y,
  1040. float *d);
  1041. sparse_status_t mkl_sparse_d_dotmv( const sparse_operation_t transA,
  1042. const double alpha,
  1043. const sparse_matrix_t A,
  1044. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1045. const double *x,
  1046. const double beta,
  1047. double *y,
  1048. double *d);
  1049. sparse_status_t mkl_sparse_c_dotmv( const sparse_operation_t transA,
  1050. const MKL_Complex8 alpha,
  1051. const sparse_matrix_t A,
  1052. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1053. const MKL_Complex8 *x,
  1054. const MKL_Complex8 beta,
  1055. MKL_Complex8 *y,
  1056. MKL_Complex8 *d);
  1057. sparse_status_t mkl_sparse_z_dotmv( const sparse_operation_t transA,
  1058. const MKL_Complex16 alpha,
  1059. const sparse_matrix_t A,
  1060. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1061. const MKL_Complex16 *x,
  1062. const MKL_Complex16 beta,
  1063. MKL_Complex16 *y,
  1064. MKL_Complex16 *d);
  1065. /* Solves triangular system y = alpha * A^{-1} * x */
  1066. sparse_status_t mkl_sparse_s_trsv ( const sparse_operation_t operation,
  1067. const float alpha,
  1068. const sparse_matrix_t A,
  1069. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1070. const float *x,
  1071. float *y );
  1072. sparse_status_t mkl_sparse_d_trsv ( const sparse_operation_t operation,
  1073. const double alpha,
  1074. const sparse_matrix_t A,
  1075. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1076. const double *x,
  1077. double *y );
  1078. sparse_status_t mkl_sparse_c_trsv ( const sparse_operation_t operation,
  1079. const MKL_Complex8 alpha,
  1080. const sparse_matrix_t A,
  1081. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1082. const MKL_Complex8 *x,
  1083. MKL_Complex8 *y );
  1084. sparse_status_t mkl_sparse_z_trsv ( const sparse_operation_t operation,
  1085. const MKL_Complex16 alpha,
  1086. const sparse_matrix_t A,
  1087. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1088. const MKL_Complex16 *x,
  1089. MKL_Complex16 *y );
  1090. /* Applies symmetric Gauss-Seidel preconditioner to symmetric system A * x = b, */
  1091. /* that is, it solves: */
  1092. /* x0 = alpha*x */
  1093. /* (L+D)*x1 = b - U*x0 */
  1094. /* (D+U)*x = b - L*x1 */
  1095. /* */
  1096. /* SYMGS_MV also returns y = A*x */
  1097. sparse_status_t mkl_sparse_s_symgs ( const sparse_operation_t op,
  1098. const sparse_matrix_t A,
  1099. const struct matrix_descr descr,
  1100. const float alpha,
  1101. const float *b,
  1102. float *x);
  1103. sparse_status_t mkl_sparse_d_symgs ( const sparse_operation_t op,
  1104. const sparse_matrix_t A,
  1105. const struct matrix_descr descr,
  1106. const double alpha,
  1107. const double *b,
  1108. double *x);
  1109. sparse_status_t mkl_sparse_c_symgs ( const sparse_operation_t op,
  1110. const sparse_matrix_t A,
  1111. const struct matrix_descr descr,
  1112. const MKL_Complex8 alpha,
  1113. const MKL_Complex8 *b,
  1114. MKL_Complex8 *x);
  1115. sparse_status_t mkl_sparse_z_symgs ( const sparse_operation_t op,
  1116. const sparse_matrix_t A,
  1117. const struct matrix_descr descr,
  1118. const MKL_Complex16 alpha,
  1119. const MKL_Complex16 *b,
  1120. MKL_Complex16 *x);
  1121. sparse_status_t mkl_sparse_s_symgs_mv ( const sparse_operation_t op,
  1122. const sparse_matrix_t A,
  1123. const struct matrix_descr descr,
  1124. const float alpha,
  1125. const float *b,
  1126. float *x,
  1127. float *y);
  1128. sparse_status_t mkl_sparse_d_symgs_mv ( const sparse_operation_t op,
  1129. const sparse_matrix_t A,
  1130. const struct matrix_descr descr,
  1131. const double alpha,
  1132. const double *b,
  1133. double *x,
  1134. double *y);
  1135. sparse_status_t mkl_sparse_c_symgs_mv ( const sparse_operation_t op,
  1136. const sparse_matrix_t A,
  1137. const struct matrix_descr descr,
  1138. const MKL_Complex8 alpha,
  1139. const MKL_Complex8 *b,
  1140. MKL_Complex8 *x,
  1141. MKL_Complex8 *y);
  1142. sparse_status_t mkl_sparse_z_symgs_mv ( const sparse_operation_t op,
  1143. const sparse_matrix_t A,
  1144. const struct matrix_descr descr,
  1145. const MKL_Complex16 alpha,
  1146. const MKL_Complex16 *b,
  1147. MKL_Complex16 *x,
  1148. MKL_Complex16 *y);
  1149. /* Computes an action of a preconditioner
  1150. which corresponds to the approximate matrix decomposition A ≈ (L+D)*E*(U+D)
  1151. for the system Ax = b.
  1152. L is lower triangular part of A
  1153. U is upper triangular part of A
  1154. D is diagonal values of A
  1155. E is approximate diagonal inverse
  1156. That is, it solves:
  1157. r = rhs - A*x0
  1158. (L + D)*E*(U + D)*dx = r
  1159. x1 = x0 + dx */
  1160. sparse_status_t mkl_sparse_s_lu_smoother ( const sparse_operation_t op,
  1161. const sparse_matrix_t A,
  1162. const struct matrix_descr descr,
  1163. const float *diag,
  1164. const float *approx_diag_inverse,
  1165. float *x,
  1166. const float *rhs);
  1167. sparse_status_t mkl_sparse_d_lu_smoother ( const sparse_operation_t op,
  1168. const sparse_matrix_t A,
  1169. const struct matrix_descr descr,
  1170. const double *diag,
  1171. const double *approx_diag_inverse,
  1172. double *x,
  1173. const double *rhs);
  1174. sparse_status_t mkl_sparse_c_lu_smoother ( const sparse_operation_t op,
  1175. const sparse_matrix_t A,
  1176. const struct matrix_descr descr,
  1177. const MKL_Complex8 *diag,
  1178. const MKL_Complex8 *approx_diag_inverse,
  1179. MKL_Complex8 *x,
  1180. const MKL_Complex8 *rhs);
  1181. sparse_status_t mkl_sparse_z_lu_smoother ( const sparse_operation_t op,
  1182. const sparse_matrix_t A,
  1183. const struct matrix_descr descr,
  1184. const MKL_Complex16 *diag,
  1185. const MKL_Complex16 *approx_diag_inverse,
  1186. MKL_Complex16 *x,
  1187. const MKL_Complex16 *rhs);
  1188. /* Level 3 */
  1189. /* Computes y = alpha * A * x + beta * y */
  1190. sparse_status_t mkl_sparse_s_mm( const sparse_operation_t operation,
  1191. const float alpha,
  1192. const sparse_matrix_t A,
  1193. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1194. const sparse_layout_t layout, /* storage scheme for the dense matrix: C-style or Fortran-style */
  1195. const float *x,
  1196. const MKL_INT columns,
  1197. const MKL_INT ldx,
  1198. const float beta,
  1199. float *y,
  1200. const MKL_INT ldy );
  1201. sparse_status_t mkl_sparse_d_mm( const sparse_operation_t operation,
  1202. const double alpha,
  1203. const sparse_matrix_t A,
  1204. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1205. const sparse_layout_t layout, /* storage scheme for the dense matrix: C-style or Fortran-style */
  1206. const double *x,
  1207. const MKL_INT columns,
  1208. const MKL_INT ldx,
  1209. const double beta,
  1210. double *y,
  1211. const MKL_INT ldy );
  1212. sparse_status_t mkl_sparse_c_mm( const sparse_operation_t operation,
  1213. const MKL_Complex8 alpha,
  1214. const sparse_matrix_t A,
  1215. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1216. const sparse_layout_t layout, /* storage scheme for the dense matrix: C-style or Fortran-style */
  1217. const MKL_Complex8 *x,
  1218. const MKL_INT columns,
  1219. const MKL_INT ldx,
  1220. const MKL_Complex8 beta,
  1221. MKL_Complex8 *y,
  1222. const MKL_INT ldy );
  1223. sparse_status_t mkl_sparse_z_mm( const sparse_operation_t operation,
  1224. const MKL_Complex16 alpha,
  1225. const sparse_matrix_t A,
  1226. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1227. const sparse_layout_t layout, /* storage scheme for the dense matrix: C-style or Fortran-style */
  1228. const MKL_Complex16 *x,
  1229. const MKL_INT columns,
  1230. const MKL_INT ldx,
  1231. const MKL_Complex16 beta,
  1232. MKL_Complex16 *y,
  1233. const MKL_INT ldy );
  1234. /* Solves triangular system y = alpha * A^{-1} * x */
  1235. sparse_status_t mkl_sparse_s_trsm ( const sparse_operation_t operation,
  1236. const float alpha,
  1237. const sparse_matrix_t A,
  1238. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1239. const sparse_layout_t layout, /* storage scheme for the dense matrix: C-style or Fortran-style */
  1240. const float *x,
  1241. const MKL_INT columns,
  1242. const MKL_INT ldx,
  1243. float *y,
  1244. const MKL_INT ldy );
  1245. sparse_status_t mkl_sparse_d_trsm ( const sparse_operation_t operation,
  1246. const double alpha,
  1247. const sparse_matrix_t A,
  1248. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1249. const sparse_layout_t layout, /* storage scheme for the dense matrix: C-style or Fortran-style */
  1250. const double *x,
  1251. const MKL_INT columns,
  1252. const MKL_INT ldx,
  1253. double *y,
  1254. const MKL_INT ldy );
  1255. sparse_status_t mkl_sparse_c_trsm ( const sparse_operation_t operation,
  1256. const MKL_Complex8 alpha,
  1257. const sparse_matrix_t A,
  1258. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1259. const sparse_layout_t layout, /* storage scheme for the dense matrix: C-style or Fortran-style */
  1260. const MKL_Complex8 *x,
  1261. const MKL_INT columns,
  1262. const MKL_INT ldx,
  1263. MKL_Complex8 *y,
  1264. const MKL_INT ldy );
  1265. sparse_status_t mkl_sparse_z_trsm ( const sparse_operation_t operation,
  1266. const MKL_Complex16 alpha,
  1267. const sparse_matrix_t A,
  1268. const struct matrix_descr descr, /* sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t */
  1269. const sparse_layout_t layout, /* storage scheme for the dense matrix: C-style or Fortran-style */
  1270. const MKL_Complex16 *x,
  1271. const MKL_INT columns,
  1272. const MKL_INT ldx,
  1273. MKL_Complex16 *y,
  1274. const MKL_INT ldy );
  1275. /* Sparse-sparse functionality */
  1276. /* Computes sum of sparse matrices: C = alpha * op(A) + B, result is sparse */
  1277. sparse_status_t mkl_sparse_s_add( const sparse_operation_t operation,
  1278. const sparse_matrix_t A,
  1279. const float alpha,
  1280. const sparse_matrix_t B,
  1281. sparse_matrix_t *C );
  1282. sparse_status_t mkl_sparse_d_add( const sparse_operation_t operation,
  1283. const sparse_matrix_t A,
  1284. const double alpha,
  1285. const sparse_matrix_t B,
  1286. sparse_matrix_t *C );
  1287. sparse_status_t mkl_sparse_c_add( const sparse_operation_t operation,
  1288. const sparse_matrix_t A,
  1289. const MKL_Complex8 alpha,
  1290. const sparse_matrix_t B,
  1291. sparse_matrix_t *C );
  1292. sparse_status_t mkl_sparse_z_add( const sparse_operation_t operation,
  1293. const sparse_matrix_t A,
  1294. const MKL_Complex16 alpha,
  1295. const sparse_matrix_t B,
  1296. sparse_matrix_t *C );
  1297. /* Computes product of sparse matrices: C = op(A) * B, result is sparse */
  1298. sparse_status_t mkl_sparse_spmm ( const sparse_operation_t operation,
  1299. const sparse_matrix_t A,
  1300. const sparse_matrix_t B,
  1301. sparse_matrix_t *C );
  1302. /* Computes product of sparse matrices: C = opA(A) * opB(B), result is sparse */
  1303. sparse_status_t mkl_sparse_sp2m ( const sparse_operation_t transA,
  1304. const struct matrix_descr descrA,
  1305. const sparse_matrix_t A,
  1306. const sparse_operation_t transB,
  1307. const struct matrix_descr descrB,
  1308. const sparse_matrix_t B,
  1309. const sparse_request_t request,
  1310. sparse_matrix_t *C );
  1311. /* Computes product of sparse matrices: C = op(A) * (op(A))^{T for real or H for complex}, result is sparse */
  1312. sparse_status_t mkl_sparse_syrk ( const sparse_operation_t operation,
  1313. const sparse_matrix_t A,
  1314. sparse_matrix_t *C );
  1315. /* Computes product of sparse matrices: C = op(A) * B * (op(A))^{T for real or H for complex}, result is sparse */
  1316. sparse_status_t mkl_sparse_sypr ( const sparse_operation_t transA,
  1317. const sparse_matrix_t A,
  1318. const sparse_matrix_t B,
  1319. const struct matrix_descr descrB,
  1320. sparse_matrix_t *C,
  1321. const sparse_request_t request );
  1322. /* Computes product of sparse matrices: C = op(A) * B * (op(A))^{T for real or H for complex}, result is dense */
  1323. sparse_status_t mkl_sparse_s_syprd ( const sparse_operation_t op,
  1324. const sparse_matrix_t A,
  1325. const float *B,
  1326. const sparse_layout_t layoutB,
  1327. const MKL_INT ldb,
  1328. const float alpha,
  1329. const float beta,
  1330. float *C,
  1331. const sparse_layout_t layoutC,
  1332. const MKL_INT ldc );
  1333. sparse_status_t mkl_sparse_d_syprd ( const sparse_operation_t op,
  1334. const sparse_matrix_t A,
  1335. const double *B,
  1336. const sparse_layout_t layoutB,
  1337. const MKL_INT ldb,
  1338. const double alpha,
  1339. const double beta,
  1340. double *C,
  1341. const sparse_layout_t layoutC,
  1342. const MKL_INT ldc );
  1343. sparse_status_t mkl_sparse_c_syprd ( const sparse_operation_t op,
  1344. const sparse_matrix_t A,
  1345. const MKL_Complex8 *B,
  1346. const sparse_layout_t layoutB,
  1347. const MKL_INT ldb,
  1348. const MKL_Complex8 alpha,
  1349. const MKL_Complex8 beta,
  1350. MKL_Complex8 *C,
  1351. const sparse_layout_t layoutC,
  1352. const MKL_INT ldc );
  1353. sparse_status_t mkl_sparse_z_syprd ( const sparse_operation_t op,
  1354. const sparse_matrix_t A,
  1355. const MKL_Complex16 *B,
  1356. const sparse_layout_t layoutB,
  1357. const MKL_INT ldb,
  1358. const MKL_Complex16 alpha,
  1359. const MKL_Complex16 beta,
  1360. MKL_Complex16 *C,
  1361. const sparse_layout_t layoutC,
  1362. const MKL_INT ldc );
  1363. /* Computes product of sparse matrices: C = op(A) * B, result is dense */
  1364. sparse_status_t mkl_sparse_s_spmmd( const sparse_operation_t operation,
  1365. const sparse_matrix_t A,
  1366. const sparse_matrix_t B,
  1367. const sparse_layout_t layout, /* storage scheme for the output dense matrix: C-style or Fortran-style */
  1368. float *C,
  1369. const MKL_INT ldc );
  1370. sparse_status_t mkl_sparse_d_spmmd( const sparse_operation_t operation,
  1371. const sparse_matrix_t A,
  1372. const sparse_matrix_t B,
  1373. const sparse_layout_t layout, /* storage scheme for the output dense matrix: C-style or Fortran-style */
  1374. double *C,
  1375. const MKL_INT ldc );
  1376. sparse_status_t mkl_sparse_c_spmmd( const sparse_operation_t operation,
  1377. const sparse_matrix_t A,
  1378. const sparse_matrix_t B,
  1379. const sparse_layout_t layout, /* storage scheme for the output dense matrix: C-style or Fortran-style */
  1380. MKL_Complex8 *C,
  1381. const MKL_INT ldc );
  1382. sparse_status_t mkl_sparse_z_spmmd( const sparse_operation_t operation,
  1383. const sparse_matrix_t A,
  1384. const sparse_matrix_t B,
  1385. const sparse_layout_t layout, /* storage scheme for the output dense matrix: C-style or Fortran-style */
  1386. MKL_Complex16 *C,
  1387. const MKL_INT ldc );
  1388. /* Computes product of sparse matrices: C = opA(A) * opB(B), result is dense*/
  1389. sparse_status_t mkl_sparse_s_sp2md ( const sparse_operation_t transA,
  1390. const struct matrix_descr descrA,
  1391. const sparse_matrix_t A,
  1392. const sparse_operation_t transB,
  1393. const struct matrix_descr descrB,
  1394. const sparse_matrix_t B,
  1395. const float alpha,
  1396. const float beta,
  1397. float *C,
  1398. const sparse_layout_t layout,
  1399. const MKL_INT ldc );
  1400. sparse_status_t mkl_sparse_d_sp2md ( const sparse_operation_t transA,
  1401. const struct matrix_descr descrA,
  1402. const sparse_matrix_t A,
  1403. const sparse_operation_t transB,
  1404. const struct matrix_descr descrB,
  1405. const sparse_matrix_t B,
  1406. const double alpha,
  1407. const double beta,
  1408. double *C,
  1409. const sparse_layout_t layout,
  1410. const MKL_INT ldc );
  1411. sparse_status_t mkl_sparse_c_sp2md ( const sparse_operation_t transA,
  1412. const struct matrix_descr descrA,
  1413. const sparse_matrix_t A,
  1414. const sparse_operation_t transB,
  1415. const struct matrix_descr descrB,
  1416. const sparse_matrix_t B,
  1417. const MKL_Complex8 alpha,
  1418. const MKL_Complex8 beta,
  1419. MKL_Complex8 *C,
  1420. const sparse_layout_t layout,
  1421. const MKL_INT ldc );
  1422. sparse_status_t mkl_sparse_z_sp2md ( const sparse_operation_t transA,
  1423. const struct matrix_descr descrA,
  1424. const sparse_matrix_t A,
  1425. const sparse_operation_t transB,
  1426. const struct matrix_descr descrB,
  1427. const sparse_matrix_t B,
  1428. const MKL_Complex16 alpha,
  1429. const MKL_Complex16 beta,
  1430. MKL_Complex16 *C,
  1431. const sparse_layout_t layout,
  1432. const MKL_INT ldc );
  1433. /* Computes product of sparse matrices: C = op(A) * (op(A))^{T for real or H for complex}, result is dense */
  1434. sparse_status_t mkl_sparse_s_syrkd( const sparse_operation_t operation,
  1435. const sparse_matrix_t A,
  1436. const float alpha,
  1437. const float beta,
  1438. float *C,
  1439. const sparse_layout_t layout, /* storage scheme for the output dense matrix: C-style or Fortran-style */
  1440. const MKL_INT ldc );
  1441. sparse_status_t mkl_sparse_d_syrkd( const sparse_operation_t operation,
  1442. const sparse_matrix_t A,
  1443. const double alpha,
  1444. const double beta,
  1445. double *C,
  1446. const sparse_layout_t layout, /* storage scheme for the output dense matrix: C-style or Fortran-style */
  1447. const MKL_INT ldc );
  1448. sparse_status_t mkl_sparse_c_syrkd( const sparse_operation_t operation,
  1449. const sparse_matrix_t A,
  1450. const MKL_Complex8 alpha,
  1451. const MKL_Complex8 beta,
  1452. MKL_Complex8 *C,
  1453. const sparse_layout_t layout, /* storage scheme for the output dense matrix: C-style or Fortran-style */
  1454. const MKL_INT ldc );
  1455. sparse_status_t mkl_sparse_z_syrkd( const sparse_operation_t operation,
  1456. const sparse_matrix_t A,
  1457. const MKL_Complex16 alpha,
  1458. const MKL_Complex16 beta,
  1459. MKL_Complex16 *C,
  1460. const sparse_layout_t layout, /* storage scheme for the output dense matrix: C-style or Fortran-style */
  1461. const MKL_INT ldc );
  1462. /* Computes forward or backward sweep of successive over-relaxation (SOR),
  1463. or Symmetric successive over-relaxation (SSOR) */
  1464. sparse_status_t mkl_sparse_s_sorv ( const sparse_sor_type_t type, /* choice of forward, backward sweep or SSOR operation */
  1465. const struct matrix_descr descrA,
  1466. const sparse_matrix_t A,
  1467. float omega,
  1468. float alpha, /* alpha equals to 0 mean zero initial guess */
  1469. float* x, /* solution vector and alpha * x is initial guess */
  1470. const float* b ); /* right-hand side */
  1471. sparse_status_t mkl_sparse_d_sorv ( const sparse_sor_type_t type, /* choice of forward, backward sweep or SSOR operation */
  1472. const struct matrix_descr descrA,
  1473. const sparse_matrix_t A,
  1474. double omega,
  1475. double alpha, /* alpha equals to 0 mean zero initial guess */
  1476. double* x, /* solution vector and alpha * x is initial guess */
  1477. const double* b ); /* right-hand side */
  1478. #ifdef __cplusplus
  1479. }
  1480. #endif /*__cplusplus */
  1481. #endif /*_MKL_SPBLAS_H_ */