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
11
votes
1 answer

OpenMP and MKL threading

I have a code in Fortran which uses DGESVD from MKL and runs on 8 cores with Intel compiler. The code is accelerated via OpenMP. Also I know that OpenMP and MKL has their own setting to set the number of threads (omp_num_threads and…
Damoon
  • 371
  • 5
  • 16
10
votes
1 answer

What is the "nomkl" Python package used for?

I came across a script that installs the nomkl Python package: conda install nomkl What is the package nomkl? What it is used for? I tried to search it but could not find any description of it on the web.
dsingh
  • 571
  • 2
  • 7
  • 17
10
votes
3 answers

Telling GCC to *not* link libgomp so it links libiomp5 instead

I need to figure out a compiler/linker directive I can feed into gcc so that it won't automatically link libgomp when -fopenmp is specified. The reason is that I'm trying to build against Intel's MKL BLAS. MKL requires adding a separate Intel…
Bob
  • 1,274
  • 1
  • 13
  • 26
9
votes
3 answers

How to install CPU version of tensorflow using conda

If I run conda install tensorflow conda wants to install the GPU version, together with CUDA etc. I do not have an Nvidia GPU so I want to install the CPU-only version. $ conda install tensorflow Solving environment: done ## Package Plan ## …
user7813790
  • 547
  • 1
  • 4
  • 12
8
votes
1 answer

Compile NumPy with MKL on Windows - DLL load failed

I've been trying to compile NumPy from source on Windows 10, with MSVC compiler and Intel MKL. I am running Windows 10.0.18363 with Microsoft Visual Studio 2019 (16.8.4) and Intel MKL 2017.8.275. I managed to reproduce the issue with a minimal…
cubanpit
  • 101
  • 6
8
votes
5 answers

Intel MKL FATAL ERROR: Cannot load mkl_intel_thread.dll

Previously I asked a similar question: cx_Freeze unable fo find mkl: MKL FATAL ERROR: Cannot load mkl_intel_thread.dll But now I have a subtle difference. I want to run the program without installing anaconda, just within a cmd.exe terminal, but it…
Alejandro Alcalde
  • 5,990
  • 6
  • 39
  • 79
8
votes
2 answers

C/C++ Matlab compiler vs MKL

Is there a significant performance difference between Matlab numerical routines exposed as a C/C++ dll through Matlab mcc versus equivalent routines found in Math Kernel Library? I'm particularly interested in the performance of linear least square…
dave
  • 81
  • 2
8
votes
4 answers

Cannot load mkl_intel_thread.dll on python executable

I'm trying to create an executable python program that runs on windows without python being installed, for this I'm using cx_Freeze. But I get the following error: "Cannot load mkl_intel_thread.dll" On my PC, which has python installed…
Carlos
  • 586
  • 1
  • 9
  • 19
8
votes
1 answer

Eigen + MKL slower than Matlab for matrix multiplication

I am doing a lot of matrix multiplications in a C++ program and I use Eigen (3.3.5) linked with Intel's MKL (2018.3.222). I use the sequential version of the MKL and OpenMP is disabled. The problem is that it is slower than Matlab. Some example…
8
votes
2 answers

What is the fastest way to perform FFT on a large file?

I am working on a C++ project that needs to perform FFT on a large 2D raster data (10 to 100 GB). In particular, the performance is quite bad when applying FFT for each column, whose elements are not contiguous in memory (placed with a stride of the…
rooot
  • 103
  • 4
8
votes
2 answers

Is numpy+mkl faster than numpy?

If numpy+mkl is faster, how much faster is it than numpy? I found that the numpy+mkl installation package is much larger than numpy, but I can't feel the difference in their speed.
REA
  • 181
  • 1
  • 1
  • 14
8
votes
1 answer

How to use non-mkl NumPy under Anaconda?

Anaconda Python distribution uses NumPy (and related packages) compiled against Intel-MKL lib, not "standard" NumPy. How can I use Anaconda with "standard" NumPy on a specific conda env? Using another Python distribution unfortunately is not an…
Celso
  • 649
  • 1
  • 6
  • 15
7
votes
1 answer

Can conda-forge have priority over defaults while still installing MKL versions of packages?

Documented Conda "best practices" is still to give conda-forge channel priority over defaults channel in environment.yml files. Can I continue to give priority to conda-forge whilst still downloading any mkl optimized packages from the `defaults…
davidrpugh
  • 4,363
  • 5
  • 32
  • 46
7
votes
1 answer

Does MKL optimize cblas for *major order?

I am using mkl cblas_dgemm and currently have it with CblasRowMajor, CblasNoTrans, CblasNotrans, for my matrices. I know that c is a row major language, whereas dgemm is a column major algorithm. I am interested to know if switching the ordering of…
drjrm3
  • 4,474
  • 10
  • 53
  • 91
7
votes
3 answers

MKL or BLAS routine to multiply vector by a scalar out-of-place

I work in simulation software and one of the many operations done on arrays is scaling a vector by a number. I have code like this: //Just some initialization code, don't bother about this part int n = 10000; std::vector input(n,…
Gustavo Muenz
  • 9,278
  • 7
  • 40
  • 42
1
2
3
53 54