Questions tagged [intel-mkl]

Intel MKL (Math Kernel Library) is a high performance math library specifically optimised for Intel processors. Its core functions include BLAS and LAPACK linear algebra routines, fast Fourier transforms and vector math functions amongst others.

Intel MKL (Math Kernel Library) is a high performance math library specifically optimised for Intel processors and explicitly parallelised with a version specifically available for High End Supercomputer clusters. Its core functions include BLAS and LAPACK linear algebra routines, fast Fourier transforms and vector math functions amongst others.

Intel MKL only supports Intel and compatible processors and is available for Windows, Linux and OS X as part of Intel® Parallel Studio and Intel® System Studio. There are free versions available for Students and Academic researchers at qualifying institutions.

The Intel® Math Kernel Library includes the following groups of routines:

  • Basic Linear Algebra Subprograms (BLAS):
    • vector operations
    • matrix-vector operations
    • matrix-matrix operations
  • Sparse BLAS Level 1, 2, and 3 (basic operations on sparse vectors and matrices)
  • LAPACK routines for solving systems of linear equations
  • LAPACK routines for solving least squares problems, eigenvalue and singular value problems, and Sylvester's equations
  • Auxiliary, utility, and test LAPACK routines
  • ScaLAPACK computational, driver and auxiliary routines (only in Intel MKL for Linux* and Windows* operating systems)
  • PBLAS routines for distributed vector, matrix-vector, and matrix-matrix operation
  • Direct and Iterative Sparse Solver routines, including a solver based on the PARDISO* sparse solver and the Intel MKL Parallel Direct Sparse Solver for Clusters
  • Direct Sparse Solver (DSS)
  • Extended Eigensolver routines for solving symmetric standard or generalized symmetric definite eigenvalue problems using the Feast algorithm
  • Vector Mathematical Library (VML) functions for computing core mathematical functions on vector arguments (with Fortran and C interfaces)
  • Vector Statistical Library (VSL) functions for generating vectors of pseudorandom numbers with different types of statistical distributions and for performing convolution and correlation computations
  • General Fast Fourier Transform (FFT) Functions, providing fast computation of Discrete Fourier Transform via the FFT algorithms and having Fortran and C interfaces
  • Cluster FFT functions (only in Intel MKL for Linux* and Windows* operating systems)
  • Tools for solving partial differential equations - trigonometric transform routines and Poisson solver
  • Optimization Solver routines for solving nonlinear least squares problems through the Trust-Region (TR) algorithms and computing Jacobi matrix by central differences
  • Basic Linear Algebra Communication Subprograms (BLACS) that are used to support a linear algebra oriented message passing interface
  • Data Fitting functions for spline-based approximation of functions, derivatives and integrals of functions, and search
798 questions
0
votes
1 answer

Avoid blas when involving temporary memory allocation?

I have a program that computes the matrix product x'Ay repeatedly. Is it better practice to compute this by making calls to MKL's blas, i.e. cblas_dgemv and cblas_ddot, which requires allocating memory to a temporary vector, or is better to simply…
Agrim Pathak
  • 3,047
  • 4
  • 27
  • 43
0
votes
1 answer

Multi-thread MKL cblas_sgemm with g++ error

Here's an example of sgemm program #include #include #include #define ITERATION 1 int main() { int ra = 128; int lda = 75; int ldb = 55; float* left = (float*)calloc(ra * lda, sizeof(float)); float* right =…
chain ro
  • 737
  • 2
  • 10
  • 21
0
votes
0 answers

'UseNativeMKL' is not a member of 'Control'

I am using v3.11.1 of math.net. MathNet.Numerics.MKL.Win v2.0 is already installed using NuGet. x86 and x64 folders are already exist in debug directory. Related DLLs such as 'MathNet.Numerics.MKL.dll' and 'libiomp5md.dll' and 5 more are already…
Amin
  • 11
  • 3
0
votes
0 answers

No improvement with intel MKL

Here is a code that uses the MKL vector addition method: #include "mkl.h" #include #include #include int main() { const int n = 10000000; int nbRuns = 1000; double *a = (double *) mkl_malloc(n *…
S. K.
  • 433
  • 3
  • 9
0
votes
1 answer

Intel MKL and Row multiplication

I have a matrix S(n x m) and a vector Sigma(n), and I would like to multiply each row S(i) by Sigma(i). I have thought of 3 things : -> Convert Sigma to a square diagonal matrix and compute S = Sigma * S, but it seems the functions exist only for…
0
votes
1 answer

anaconda mkl/openplas and IPOPT

IPOPT is not thread safe. In anaconda python I can opt out MKL optimizations using conda install nomkl. However, openblas is installed automatically instead. I was wondering, if I might run into problems or wrong results because anaconda still uses…
Moritz
  • 5,130
  • 10
  • 40
  • 81
0
votes
1 answer

Use of MKL libraries in Visual Studio

I need to use the Fortran function "vsCdfNormInv", contained in the library 'mkl_vml.f90' (C:\Program Files (x86)\Intel\Composer XE 2015\mkl\include). I'm using Visual Studio 2013 Ultimate. How may I include the libraries by a command contained in…
0
votes
1 answer

When I attempting to install scipy on windows,the console show that Failed building wheel for scipy?

In the cmd, I put the following code : pip install scipy But it doesn't work, and the console show that:
C.J
  • 57
  • 1
  • 10
0
votes
1 answer

When i try to install numpy-1.11.0+mkl-cp35-cp35m-win32.whl,there has a big trouble

In the cmd,i put this code: pip install numpy-1.11.0+mkl-cp35-cp35m-win32.whl then system show the infomation to me: OSError: [WinError 17] The system cannot move the file to a different disk drive: 'd:\programs how to deal with it?
C.J
  • 57
  • 1
  • 10
0
votes
1 answer

MKL BLAS functions not behaving as expected

I can't get Intel MKL to work as it should from C. I have the following test program: #include "stdafx.h" #include"mkl.h" int main() { int one = 1; int ten = 10; double copy[10]; double threes[10]; for (int i = 0; i < 10; ++i)…
MatthewJohnHeath
  • 393
  • 2
  • 12
0
votes
1 answer

Linking MKL to MPI

I want to use MKL with MPI in a program I'm writing so I have created a bash file using mpic++ as my compiler. For that reason I cannot use flags like -mkl because they produce errors. If I don't use the flags I get dozens of undefined reference to…
System
  • 241
  • 2
  • 4
  • 13
0
votes
0 answers

Will intel mkl sparse BLAS coogemv internally change coo to csr storage?

There is sparse version of BLAS in intel MKL, for example doing multiplication of matrix and vector, we could use mkl_?coogemv Computes matrix-vector product of a sparse general matrix stored in the coordinate format with one-based indexing But…
user15964
  • 2,507
  • 2
  • 31
  • 57
0
votes
0 answers

Matlab try "mex -o .cpp" cannot find reference when using Intel mkl library

When I try to compile the cpp code in matlab #include "mex.h" #include "mkl_vml.h" #include "mkl_cblas.h" #include "mkl_service.h" #include typedef ptrdiff_t intt; void mexFunction( int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]…
0
votes
1 answer

How to avoid fork-join when calling cblas_sgemm in MKL?

The code is like this: for(int i = 0; i < loop_count; i++) cblas_sgemm(); When the matrix is not very large, the fork-join cost is very obvious, especially when this is run on MIC. Besides, separate the mission by hand will cause…
0
votes
1 answer

Memory increase with fortran & MKL in parallel

I wrote a program for matrix product state in Fortran 90. In this program, I use the Intel MKL library. When the compiler option is: OPTIMIZE= -parallel -par-threshold90 -ipo -O3 -no-prec-div -fp-model fast=2 -xHost LinkLine = $(OPTIMIZE)…