Skip to content

Latest commit

 

History

History
39 lines (26 loc) · 2 KB

README.md

File metadata and controls

39 lines (26 loc) · 2 KB

MKL.jl

Intel MKL linear algebra in Julia.

Build Status Build status

MKL.jl is a package that makes Julia's linear algebra use Intel MKL BLAS and LAPACK instead of OpenBLAS. The build step of the package will automatically download Intel MKL and rebuild Julia's system image against Intel MKL.

To Install:

julia>]add https://github.com/JuliaComputing/MKL.jl#sf/improve_installation_experience

After installation it should build automatically (which takes some time). If building was not triggered automatically (happens when MKL download is done already on the system) run the following command:

] build MKL

Then after building restart Julia.

To Check Installation:

Once the install has completed, you'll have

julia> using LinearAlgebra

julia> BLAS.vendor()
:mkl

and all Julia's dense linear algebra routines ranging from matrix multiply, over solving linear systems of equations, to eigenvalue computations will be computed by Intel MKL. In many cases, this will greatly improve the execution time.

Caveats

  • Downstream binary libraries that depend on BLAS such as SuiteSparse (solving sparse linear systems) and ARPACK (for large scale eigevalue computations) will currently not work once MKL.jl has been installed. We are working on removing these limitations.

  • It is not possible to revert the effect of install MKL.jl. To return to OpenBLAS, it is necessary to reinstall Julia.

  • The current version of MKL.jl doesn't have access to the same precompilation information as the official binaries and source builds so the REPL will have more latency after MKL.jl has been installed. It should be possible to fix this once Julia 1.1 has been released. See JuliaLinearAlgebra#1.