Missing function ?lascl2 in MKL reelase 10.3 Update 11

Missing function ?lascl2 in MKL reelase 10.3 Update 11

Hi All,

As per MKL documnetation the library support the function ?lascl2. And the function definition shall be contained in Composer XE 2011 SP1\\mkl\\include\\mkl_lapack.h.

I cannot find it (I can only find ?lascl) on my installation. I have licensed version of MKL library.

Is there a reason we don’t have the complete set? Is there a way to download this specific missing module?

I do see the definition in the mkl_rt.lib when i serach it using text editor.So it seems got missed in header definition. Kindly provide the solution.

Regards
Rohit

7 Beiträge / 0 neu
Letzter Beitrag
Nähere Informationen zur Compiler-Optimierung finden Sie in unserem Optimierungshinweis.

Rohit, thanks for the issue. we missed to add this API to the header files.we will fix it the next update.--Gennady

as a temporarily workaroud - please add  manually the declaration of this API to the mkl_lapack.h and then you can compile and link your application.

Kindly share the API signature. We tried using some of them based on the API definition in document. it didnt worked.
#r
Rohit

void CLARSCL2( const MKL_INT* m, const MKL_INT* n, const float* d, MKL_Complex8* x,
               const MKL_INT* ldx );
void CLARSCL2_( const MKL_INT* m, const MKL_INT* n, const float* d, MKL_Complex8* x,
                const MKL_INT* ldx );
void clarscl2( const MKL_INT* m, const MKL_INT* n, const float* d, MKL_Complex8* x,
               const MKL_INT* ldx );
void clarscl2_( const MKL_INT* m, const MKL_INT* n, const float* d, MKL_Complex8* x,
               const MKL_INT* ldx );

void CLASCL2( const MKL_INT* m, const MKL_INT* n, const float* d, MKL_Complex8* x,
              const MKL_INT* ldx );
void CLASCL2_( const MKL_INT* m, const MKL_INT* n, const float* d, MKL_Complex8* x,
               const MKL_INT* ldx );
void clascl2( const MKL_INT* m, const MKL_INT* n, const float* d, MKL_Complex8* x,
              const MKL_INT* ldx );
void clascl2_( const MKL_INT* m, const MKL_INT* n, const float* d, MKL_Complex8* x,
               const MKL_INT* ldx );

void DLARSCL2( const MKL_INT* m, const MKL_INT* n, const double* d, double* x,
               const MKL_INT* ldx );
void DLARSCL2_( const MKL_INT* m, const MKL_INT* n, const double* d, double* x,
                const MKL_INT* ldx );
void dlarscl2( const MKL_INT* m, const MKL_INT* n, const double* d, double* x,
               const MKL_INT* ldx );
void dlarscl2_( const MKL_INT* m, const MKL_INT* n, const double* d, double* x,
                const MKL_INT* ldx );

void DLASCL2( const MKL_INT* m, const MKL_INT* n, const double* d, double* x,
              const MKL_INT* ldx );
void DLASCL2_( const MKL_INT* m, const MKL_INT* n, const double* d, double* x,
               const MKL_INT* ldx );
void dlascl2( const MKL_INT* m, const MKL_INT* n, const double* d, double* x,
              const MKL_INT* ldx );
void dlascl2_( const MKL_INT* m, const MKL_INT* n, const double* d, double* x,
               const MKL_INT* ldx );

void SLARSCL2( const MKL_INT* m, const MKL_INT* n, const float* d, float* x,
               const MKL_INT* ldx );
void SLARSCL2_( const MKL_INT* m, const MKL_INT* n, const float* d, float* x,
                const MKL_INT* ldx );
void slarscl2( const MKL_INT* m, const MKL_INT* n, const float* d, float* x,
               const MKL_INT* ldx );
void slarscl2_( const MKL_INT* m, const MKL_INT* n, const float* d, float* x,
                const MKL_INT* ldx );

void SLASCL2( const MKL_INT* m, const MKL_INT* n, const float* d, float* x,
              const MKL_INT* ldx );
void SLASCL2_( const MKL_INT* m, const MKL_INT* n, const float* d, float* x,
               const MKL_INT* ldx );
void slascl2( const MKL_INT* m, const MKL_INT* n, const float* d, float* x,
              const MKL_INT* ldx );
void slascl2_( const MKL_INT* m, const MKL_INT* n, const float* d, float* x,
               const MKL_INT* ldx );

void ZLARSCL2( const MKL_INT* m, const MKL_INT* n, const double* d, MKL_Complex16* x,
               const MKL_INT* ldx );
void ZLARSCL2_( const MKL_INT* m, const MKL_INT* n, const double* d, MKL_Complex16* x,
                const MKL_INT* ldx );
void zlarscl2( const MKL_INT* m, const MKL_INT* n, const double* d, MKL_Complex16* x,
               const MKL_INT* ldx );
void zlarscl2_( const MKL_INT* m, const MKL_INT* n, const double* d, MKL_Complex16* x,
                const MKL_INT* ldx );

void ZLASCL2( const MKL_INT* m, const MKL_INT* n, const double* d, MKL_Complex16* x,
              const MKL_INT* ldx );
void ZLASCL2_( const MKL_INT* m, const MKL_INT* n, const double* d, MKL_Complex16* x,
               const MKL_INT* ldx );
void zlascl2( const MKL_INT* m, const MKL_INT* n, const double* d, MKL_Complex16* x,
              const MKL_INT* ldx );
void zlascl2_( const MKL_INT* m, const MKL_INT* n, const double* d, MKL_Complex16* x,
               const MKL_INT* ldx );

Please check and let us know how they work

Thanks,
-- Victor

Thanks!!

#r
Rohit

Hello Rohit,
pls see the fix the problem in version 11.0 update 1.
--Gennady

Kommentar hinterlassen

Bitte anmelden, um einen Kommentar hinzuzufügen. Sie sind noch nicht Mitglied? Jetzt teilnehmen