Giter VIP home page Giter VIP logo

mkl.jl's Introduction

MKL.jl

Using Julia with Intel's MKL

MKL.jl is a Julia package that allows users to use the Intel MKL library for Julia's underlying BLAS and LAPACK, instead of OpenBLAS, which Julia ships with by default. Julia includes libblastrampoline, which enables picking a BLAS and LAPACK library at runtime. A JuliaCon 2021 talk provides details on this mechanism.

This package requires Julia 1.8+, and only covers the forwarding of BLAS and LAPACK routines in Julia to MKL. Other packages like IntelVectorMath.jl, Pardiso.jl, etc. wrap more of MKL's functionality. The oneAPI.jl package provides support for Intel OneAPI and Intel GPUs.

Usage

If you want to use MKL.jl in your project, make sure it is the first package you load before any other package. It is essential that MKL be loaded before other packages so that it can find the Intel OMP library and avoid issues resulting out of GNU OMP being loaded first.

To Install:

Adding the package will replace the system BLAS and LAPACK with MKL provided ones at runtime. Note that the MKL package has to be loaded in every new Julia process. Upon quitting and restarting, Julia will start with the default OpenBLAS.

julia> using Pkg; Pkg.add("MKL")

Hint: On Windows the installation might fail due to a missing library with the name VCRUNTIME140.dll. To install it, download and execute https://aka.ms/vs/17/release/vc_redist.x64.exe .

To Check Installation:

julia> using LinearAlgebra

julia> BLAS.get_config()
LinearAlgebra.BLAS.LBTConfig
Libraries: 
└ [ILP64] libopenblas64_.0.3.13.dylib

julia> using MKL

julia> BLAS.get_config()
LinearAlgebra.BLAS.LBTConfig
Libraries: 
└ [ILP64] libmkl_rt.1.dylib

Using the 64-bit vs 32-bit version of MKL

We use ILP64 by default on 64-bit systems, and LP64 on 32-bit systems.

NOTE: Using MKL with Distributed

If you are using Distributed for parallelism on a single node, set MKL to single threaded mode to avoid over subcribing the CPUs.

BLAS.set_num_threads(1)

NOTE: MKL on Intel Macs

MKL for Intel Macs is discontinued as of MKL 2024. Thus, in order to use MKL on Intel Macs, you will need to install the right version of MKL_jll and possibly also pin it.

julia> Pkg.add(name="MKL_jll", version="2023");
   Resolving package versions...
    Updating `~/.julia/environments/v1.10/Project.toml`
⌃ [856f044c] + MKL_jll v2023.2.0+0
  No Changes to `~/.julia/environments/v1.10/Manifest.toml`

julia> Pkg.pin(name="MKL_jll", version="2023");
   Resolving package versions...
    Updating `~/.julia/environments/v1.10/Project.toml`
⌃ [856f044c] ~ MKL_jll v2023.2.0+0  v2023.2.0+0 ⚲
    Updating `~/.julia/environments/v1.10/Manifest.toml`
⌃ [856f044c] ~ MKL_jll v2023.2.0+0  v2023.2.0+0 ⚲
        Info Packages marked with ⌃ have new versions available and may be upgradable.

MKL seems to have some issues on Intel Macs when multi-threading is enabled. Threading can be disabled in such cases with:

MKL.set_threading_layer(THREADING_SEQUENTIAL)

mkl.jl's People

Contributors

aminya avatar amontoison avatar andreasnoack avatar danielwe avatar daviehh avatar dependabot[bot] avatar dilumaluthge avatar fgerick avatar giordano avatar imciner2 avatar kristofferc avatar pallharaldsson avatar prbzrg avatar ranocha avatar roger-luo avatar staticfloat avatar viralbshah avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mkl.jl's Issues

MKL.jl Won't Install on JuliaPro `1.4.2-1` on Windows 10

i want to install MKL,jl with 10 and JuliaPro, but got stuck in here.

julia> Pkg.build
build (generic function with 5 methods)

julia> Pkg.build("MKL")
Building MKL → C:\Users\49032\.juliapro\JuliaPro_v1.4.2-1\packages\MKL\1edTo\deps\build.log
┌ Error: Error building MKL:
│ [ Info: Splicing in code to load MKL in G:\JuliaPro-1.4.2-1\Julia-1.4.2\bin..\share\julia\base\sysimg.jl
│ [ Info: getting precompile script from: https://raw.githubusercontent.com/JuliaLang/julia/release-1.4/contrib/generate_precompile.jl
│ ┌ Error: Download failed: curl: (6) Could not resolve host: raw.githubusercontent.com
│ └ @ Base download.jl:43
│ ERROR: LoadError: failed process: Process('C:\WINDOWS\System32\curl.exe' -s -S -g -L -f -o 'C:\Users\49032\AppData\Local\Temp\jl_iNuBem7FdO' https://raw.githubusercontent.com/JuliaLang/julia/release-1.4/contrib/generate_precompile.jl, ProcessExited(6)) [6]
│
│ Stacktrace:
│ [1] pipeline_error at .\process.jl:525 [inlined]
│ [2] download_curl(::String, ::String, ::String) at .\download.jl:44
│ [3] download at .\download.jl:62 [inlined]
│ [4] get_precompile_statments_file() at C:\Users\49032.juliapro\JuliaPro_v1.4.2-1\packages\MKL\1edTo\src\install.jl:75
│ [5] top-level scope at C:\Users\49032.juliapro\JuliaPro_v1.4.2-1\packages\MKL\1edTo\src\install.jl:107
│ [6] eval at .\boot.jl:331 [inlined]
│ [7] change_blas_library(::String) at C:\Users\49032.juliapro\JuliaPro_v1.4.2-1\packages\MKL\1edTo\src\install.jl:105
│ [8] enable_mkl_startup() at C:\Users\49032.juliapro\JuliaPro_v1.4.2-1\packages\MKL\1edTo\src\install.jl:82
│ [9] top-level scope at C:\Users\49032.juliapro\JuliaPro_v1.4.2-1\packages\MKL\1edTo\deps\build.jl:5
│ [10] include(::String) at .\client.jl:439
│ [11] top-level scope at none:5
│ in expression starting at C:\Users\49032.juliapro\JuliaPro_v1.4.2-1\packages\MKL\1edTo\deps\build.jl:5
└ @ Pkg.Operations C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\Operations.jl:892

i can not figure why.

PyPlot crashes after Julia MKL is installed

I installed PyPlot
tested with PyPlot example -> works fine
I instatalled LinearAlgebra + MKL no error message
rebooted Julia
Tried the PyPLot example --> Julia windows suddenly closes withot error message

Build fails with Ubuntu 20.04

Building MKL.jl with Julia 1.4.2 on Ubuntu 20.04 fails with

(@v1.4) pkg> build MKL
   Building MKL → `~/.julia/packages/MKL/1edTo/deps/build.log`
┌ Error: Error building `MKL`: 
│ Generating precompile statements... 4910 generated in 328.005384 seconds (overhead 233.862245 seconds)
│ Two passes with the same argument (-LowerPTLS) attempted to be registered!
│ 
│ signal (11): Segmentation fault
│ in expression starting at /home/mocar/.julia/packages/MKL/1edTo/deps/build.jl:5
│ _ZN4llvm14PassNameParser13passEnumerateEPKNS_8PassInfoE at /home/mocar/julia-1.4.2/bin/../lib/julia/libLLVM-8jl.so (unknown line)
│ Allocations: 6508118 (Pool: 6505991; Big: 2127); GC: 7
└ @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Operations.jl:899

How to use MKL Pardiso

I need to solve a large sparse matrix equation system now. As far as I know, MKL pardiso is more efficient. I tried to install Pardiso.jl in Julia and download MKL (windows), but when I tried an example, Julia reported the following error:

Julia has exited. Press Enter to start a new session.
INTEL MKL ERROR: 操作系统无法运行 %1。 mkl_intel_thread.dll.
Intel MKL FATAL ERROR: Cannot load mkl_intel_thread.dll.

Because I didn't know how to solve it,
(I know this is due to some of my path configuration errors, but I really can't fix this problem on Windows. Maybe you can give me some reference 😄).
I found MKL. jl. In README it said:

The build step of the package will automatically download Intel MKL and rebuild Julia's system image against Intel MKL.

So I think I can install MKL.jl directly, but I'm not sure if MKl. jl includes Pardiso?

build MKL fails

This is caused by #29.

(v1.3) pkg> build MKL
  Building MKL  `~/.julia/packages/MKL/1edTo/deps/build.log`
┌ Error: Error building `MKL`: 
│ ERROR: LoadError: InitError: Unable to automatically install 'MKL' from '/Users/aza/.julia/packages/MKL_jll/eaGwV/Artifacts.toml'
│ Stacktrace:
│  [1] error(::String) at /Applications/Julia-1.3.app/Contents/Resources/julia/lib/julia/sys.dylib:?
│  [2] #ensure_artifact_installed#42(::Pkg.BinaryPlatforms.Platform, ::Bool, ::typeof(Pkg.Artifacts.ensure_artifact_installed), ::String, ::Dict{String,Any}, ::String) at /Applications/Julia-1.3.app/Contents/Resources/julia/lib/julia/sys.dylib:?
│  [3] (::Pkg.Artifacts.var"#kw##ensure_artifact_installed")(::NamedTuple{(:platform,),Tuple{Pkg.BinaryPlatforms.MacOS}}, ::typeof(Pkg.Artifacts.ensure_artifact_installed), ::String, ::Dict{String,Any}, ::String) at /Applications/Julia-1.3.app/Contents/Resources/julia/lib/julia/sys.dylib:?
│  [4] do_artifact_str(::String, ::Dict{String,Any}, ::String, ::Module) at /Applications/Julia-1.3.app/Contents/Resources/julia/lib/julia/sys.dylib:?
│  [5] #invokelatest#1 at ./essentials.jl:709 [inlined]
│  [6] invokelatest at ./essentials.jl:708 [inlined]
│  [7] __init__() at /Users/aza/.julia/packages/MKL_jll/eaGwV/src/wrappers/x86_64-apple-darwin14.jl:42
│  [8] _include_from_serialized(::String, ::Array{Any,1}) at /Applications/Julia-1.3.app/Contents/Resources/julia/lib/julia/sys.dylib:?
│  [9] _require_search_from_serialized(::Base.PkgId, ::String) at /Applications/Julia-1.3.app/Contents/Resources/julia/lib/julia/sys.dylib:?
│  [10] _require(::Base.PkgId) at /Applications/Julia-1.3.app/Contents/Resources/julia/lib/julia/sys.dylib:?
│  [11] require(::Base.PkgId) at /Applications/Julia-1.3.app/Contents/Resources/julia/lib/julia/sys.dylib:? (repeats 2 times)
│  [12] include_relative(::Module, ::String) at /Applications/Julia-1.3.app/Contents/Resources/julia/lib/julia/sys.dylib:?
│  [13] include(::Module, ::String) at /Applications/Julia-1.3.app/Contents/Resources/julia/lib/julia/sys.dylib:? (repeats 2 times)
│  [14] top-level scope at none:5
│ during initialization of module MKL_jll
│ in expression starting at /Users/aza/.julia/packages/MKL/1edTo/deps/build.jl:2
└ @ Pkg.Operations /Applications/Julia-1.3.app/Contents/Resources/julia/share/julia/stdlib/v1.3/Pkg/src/backwards_compatible_isolation.jl:649
(v1.3) pkg> status
    Status `~/.julia/environments/v1.3/Project.toml`
  [33e6dc65] MKL v0.2.0 #master (https://github.com/JuliaComputing/MKL.jl)
  [9b87118b] PackageCompiler v1.0.0
julia> versioninfo()
Julia Version 1.3.1
Commit 2d5741174c (2019-12-30 21:36 UTC)
Platform Info:
  OS: macOS (x86_64-apple-darwin18.6.0)
  CPU: Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-6.0.1 (ORCJIT, haswell)
Environment:
  JULIA_NUM_THREADS = 4
  JULIA_EDITOR = subl

TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.

If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.

If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Error building MKL with JuliaPro (1.5.2-1)

I am not able to build MKL.jl on JuliaPro, version 1.5.2-1. It seems to be a path issue of some sort, from this error I see in the build.log:

error during bootstrap:
LoadError("/tmp/jl_KJBg9y/sysimage_packagecompiler_47f66860-1d26-11eb-158f-992ab58b7eca.jl", 16, ArgumentError("Package MKL not found in current path:\n- Run `import Pkg; Pkg.add(\"MKL\")` to install the MKL package.\n"))
require at ./loading.jl:893

I don't quite know how to fix this though. Is there something I'm doing wrong?

System: Ubuntu LTS 18.04 and 20.04

Squeeze More Performance from Intel MKL

Hello,
I don't see the way MKL is built here (I see DLL Open is called, could it be no compilation is done only calling a DLL?).

But it would be great if it is built and compiled into Julia utilizing more features of Intel MKL to improve performance:

image

I think the Packed API and Compact API are more tricky but if they will be exposed it will be great.

MKL JIT Feature

MKL also has a new JIT feature which I think could be great addition - Intel® Math Kernel Library Improved Small Matrix Performance Using Just-in-Time (JIT) Code Generation for Matrix Multiplication (GEMM).

Remark
It seem you use Intel MKL 2019.0. while Intel MKL 2019.4 is out (OpenMP is even from 2018 release).

Update (14/10/2019)
I listed what I wanted in Benchmark MATLAB & Julia for Matrix Operations - Message 145.

MKL.jl Won't Install on JuliaPro `1.4.0-1` on Windows 10

I have Windows 10 with the currently latest JulaiPro (1.4.0-1).
When I try to install MKL.jl it gets stuck on the Building step:

(@v1.4) pkg> add https://github.com/JuliaComputing/MKL.jl
    Cloning git-repo `https://github.com/JuliaComputing/MKL.jl`
   Updating git-repo `https://github.com/JuliaComputing/MKL.jl`
   Updating registry at `<UserPath>.juliapro\JuliaPro_v1.4.0-1\registries\JuliaPro`
  Resolving package versions...
  Installed PackageCompiler ─ v1.0.2
   Updating `<UserPath>.juliapro\JuliaPro_v1.4.0-1\environments\v1.4\Project.toml`
  [33e6dc65] + MKL v0.2.0 #master (https://github.com/JuliaComputing/MKL.jl)
   Updating `<UserPath>.juliapro\JuliaPro_v1.4.0-1\environments\v1.4\Manifest.toml`
  [33e6dc65] + MKL v0.2.0 #master (https://github.com/JuliaComputing/MKL.jl)
  [9b87118b] + PackageCompiler v1.0.2
   Building MKL → `<UserPath>.juliapro\JuliaPro_v1.4.0-1\packages\MKL\1edTo\deps\build.log`

In the above I changed the user path to a space holder <UserPath>.

I looked into the build.log file, yet it is empty.

Any idea?

Remove suitesparse / arpack caveat?

I just ran a test

julia> using LinearAlgebra; BLAS.vendor()
:mkl

julia> using Arpack, SparseArrays

julia> (A, B) = kron(A, B);

julia> function Hub_ED(U, μ, L,)
           id = [1 0; 0 1]
           c = [0 0; 1 0]

           c_up = c  id
           c_dn = id  c
           id² = id  id

           n_up = c_up' * c_up
           n_dn = c_dn' * c_dn

           Û =  U*(n_up * n_dn) - μ*(n_up + n_dn)

           c_dg_up(i) = foldl(, sparse.([i==j ? c_up' : id² for j in 1:L]))
           cup(i)     = foldl(, sparse.([i==j ? c_up  : id² for j in 1:L]))
           c_dg_dn(i) = foldl(, sparse.([i==j ? c_dn' : id² for j in 1:L]))
           cdn(i)     = foldl(, sparse.([i==j ? c_dn  : id² for j in 1:L]))
           Ûf(i)      = foldl(, sparse.([i==j ? Û     : id² for j in 1:L]))

           function c_dg_c(i)
               out = c_dg_up(i)*cup(i+1) + c_dg_dn(i)*cdn(i+1)
               out + out'
           end

           H = -sum(c_dg_c, 1:(L-1)) + sum(Ûf, 1:L)
           @show typeof(H)
           (λ, ϕ), t = @timed Arpack.eigs(H, nev=1, which=:SR)
           λ, ϕ, t
       end
Hub_ED (generic function with 1 method)

julia> Hub_ED(1, 1, 8)
typeof(H) = SparseMatrixCSC{Int64,Int64}
([-15.813000555255263], [-1.949487752371787e-18; -2.0668833887408264e-18;  ; 2.035974575802704e-18; 1.216026630767711e-18], 0.340870967)

and it looks like things are running fine with SuiteSparse and Arpack.

Libblastrampoline: less verbose version of get_config()

Currently we tell users with >= Julia 1.7, i.e. using the new libblastrampoline facilities, to check BLAS.get_config() to see whether they are using OpenBLAS or MKL. However, the output of BLAS.get_config() is rather verbose and contains lots of information that is likely irrelevant for the regular user.

LinearAlgebra.BLAS.LBTConfig(LinearAlgebra.BLAS.LBTLibraryInfo[
LinearAlgebra.BLAS.LBTLibraryInfo("/Users/viral/.julia/artifacts/
073ff95e2c63501547247d6e1321bf4ee2a78933/lib/libmkl_rt.1.dylib", Ptr{Nothing} 
@0x00007fb6a5ef4820, "", UInt8[0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
0xff, 0xff    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01], 
:ilp64, :plain)], [:f2c_capable], ["LAPACKE_c_nancheck", "LAPACKE_cbbcsd", 
"LAPACKE_cbbcsd_work", "LAPACKE_cbdsqr", "LAPACKE_cbdsqr_work", 
"LAPACKE_cgb_nancheck", "LAPACKE_cgb_trans", "LAPACKE_cgbbrd", 
"LAPACKE_cgbbrd_work", "LAPACKE_cgbcon"    "zunmlq_", "zunmql_", "zunmqr_", 
"zunmr2_", "zunmr3_", "zunmrq_", "zunmrz_", "zunmtr_", "zupgtr_", "zupmtr_"])

I propose that we add a simpler version of this function that either just returns the filename of the BLAS library, i.e. libmkl_rt.1.dylib in the case above, or checks for mkl or openblas substrings in this filename and just returns :mkl or :openblas64, i.e. what BLAS.vendor() was doing up until 1.7. The latter would be my preference.

Do we need a new function name for this or can we refactor the old BLAS.vendor() for this? Maybe that's not possible but I find it rather confusing that it outputs :openblas64 despite that fact that libmkl_rt.1.dylib is used.

I'll prepare a PR once we've agreed on something here.

ping: @ViralBShah

Cannot open libmkl_rt

Testing on Windows with the latest MKL on Julia 1.4:

julia> using LinearAlgebra

julia> BLAS.vendor()
:mkl

julia> using Libdl

julia>dlopen(:libmkl_rt; throw_error=true)
ERROR: could not load library "libmkl_rt"
The specified module could not be found.

Stacktrace:
 [1] dlopen(::String, ::UInt32; throw_error::Bool) at C:\Julia-1.4.0-DEV\share\julia\stdlib\v1.4\Libdl\src\Libdl.jl:109
 [2] #dlopen#2 at C:\Julia-1.4.0-DEV\share\julia\stdlib\v1.4\Libdl\src\Libdl.jl:109 [inlined]
 [3] top-level scope at none:0

This came up from this PR to VML.jl : JuliaMath/IntelVectorMath.jl#17

Where did the caveats section go?

I remember there was a caveats section in the Readme.md. I can't find it anymore. I doubt that the caveats are gone - please correct me if I'm mistaken. So why has it been removed and what are the current shortcomings of MKL.jl?

Julia+MKL can't seem to multithread somehow

Hi,
I installed and built Julia against MKL as per the README, and my code runs fine. However, originally with OpenBLAS I was able to get up to 16 local threads utilized, but with MKL I have so far been unable to make it use more than a single thread on the same code.

I have tried:

  • BLAS.set_num_threads
  • Setting the MKL_NUM_THREADS env variable

No luck so far. My Googling efforts also haven't found anything that helps.

Any idea as to what could be the problem?

Docker ERROR: Unable to automatically install 'IntelOpenMP'

Hello, building MKL fails with the message below. After searching for answers I do install libcurl4 but this makes no difference. Docker file is below also.

#12 113.3 Cloning [56f22d72-fd6d-98f1-02f0-08ddc0907c33] Artifacts from https://github.com/JuliaPackaging/Artifacts.jl.git Installed Artifacts ─────── v1.3.0 #12 114.6 ERROR: Unable to automatically install 'IntelOpenMP' from '/opt/julia/packages/IntelOpenMP_jll/TUm6w/Artifacts.toml' #12 115.6 Stacktrace: #12 115.8 [1] error(::String) at ./error.jl:33 #12 116.2 [2] ensure_artifact_installed(::String, ::Dict{String,Any}, ::String; platform::Pkg.BinaryPlatforms.Platform, verbose::Bool, quiet_download::Bool) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Pkg/src/Artifacts.jl:899 #12 116.3 [3] ensure_all_artifacts_installed(::String; platform::Pkg.BinaryPlatforms.Platform, pkg_uuid::Nothing, include_lazy::Bool, verbose::Bool, quiet_download::Bool) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Pkg/src/Artifacts.jl:963 #12 116.3 [4] download_artifacts(::Pkg.Types.Context, ::Array{String,1}; platform::Pkg.BinaryPlatforms.Linux, verbose::Bool) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Pkg/src/Operations.jl:663 #12 116.3 [5] download_artifacts(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}; platform::Pkg.BinaryPlatforms.Linux, verbose::Bool) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Pkg/src/Operations.jl:642 #12 116.3 [6] add(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}, ::Array{Base.UUID,1}; preserve::Pkg.Types.PreserveLevel, platform::Pkg.BinaryPlatforms.Linux) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Pkg/src/Operations.jl:1141 #12 116.3 [7] add(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}; preserve::Pkg.Types.PreserveLevel, platform::Pkg.BinaryPlatforms.Linux, kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:188 #12 116.4 [8] add(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:139 #12 116.4 [9] #add#21 at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:67 [inlined] #12 116.4 [10] add at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:67 [inlined] #12 116.4 [11] #add#20 at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:66 [inlined] #12 116.4 [12] add at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:66 [inlined] #12 116.4 [13] add(::String; kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:65 #12 116.4 [14] add(::String) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:65 #12 116.4 [15] top-level scope at none:1 executor failed running [/bin/sh -c julia -e 'using Pkg; Pkg.add("MKL"); Pkg.build("MKL")']: exit code: 1

julia> versioninfo() Julia Version 1.5.3 Commit 788b2c77c1 (2020-11-09 13:37 UTC) Platform Info: OS: Linux (x86_64-pc-linux-gnu) CPU: Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz WORD_SIZE: 64 LIBM: libopenlibm LLVM: libLLVM-9.0.1 (ORCJIT, haswell) Environment: JULIA_DEPOT_PATH = /opt/julia JULIA_PKGDIR = /opt/julia JULIA_VERSION = 1.5.3

Dockerfile used

`FROM ubuntu:18.04
RUN apt-get update && apt-get install -y --no-install-recommends
build-essential
libatomic1
openssh-client
python
gfortran
gcc
libcurl4
perl
wget
m4
cmake
pkg-config
git
&& apt-get clean && rm -rf /var/cache/apt/archives/* /var/lib/apt/lists/*

ENV JULIA_DEPOT_PATH=/opt/julia
ENV JULIA_PKGDIR=/opt/julia
ENV JULIA_VERSION=1.5.3

ENV BINARYPROVIDER_DOWNLOAD_ENGINE=wget

RUN mkdir /opt/julia-${JULIA_VERSION}
RUN cd /tmp
RUN wget --no-check-certificate https://julialang-s3.julialang.org/bin/linux/x64/1.5/julia-${JULIA_VERSION}-linux-x86_64.tar.gz
RUN tar xzf julia-${JULIA_VERSION}-linux-x86_64.tar.gz -C /opt/julia-${JULIA_VERSION} --strip-components=1
RUN rm -rf /tmp/julia-${JULIA_VERSION}-linux-x86_64.tar.gz
RUN ln -fs /opt/julia-*/bin/julia /usr/local/bin/julia

RUN julia -e 'using Pkg; Pkg.add("MKL"); Pkg.build("MKL")'`

Test MKL.jl with the full Julia LinearAlgebra tests

It would be nice if we could set up a way to easily run stdlib LinearAlgebra tests with MKL. I think they take too long, so perhaps we can't do that in CI. Should be very little to no code, but would be nice to run it on a regular basis.

MKL was tested on the buildbots in this PR, and a couple of small changes to LinearAlgebra tests will make everything pass.
JuliaLang/julia#39685

could not load library in building

Tested in two machines:

(@v1.4) pkg> add https://github.com/JuliaComputing/MKL.jl
    Cloning git-repo `https://github.com/JuliaComputing/MKL.jl`
   Updating git-repo `https://github.com/JuliaComputing/MKL.jl`
  Resolving package versions...
  Installed IntelOpenMP_jll ─ v2018.0.3+0
  Installed MKL_jll ───────── v2020.0.166+1
  Installed PackageCompiler ─ v1.1.1
Downloading artifact: IntelOpenMP
   Updating `~/.julia/environments/v1.4/Project.toml`
  [33e6dc65] + MKL v0.2.0 #master (https://github.com/JuliaComputing/MKL.jl)
   Updating `~/.julia/environments/v1.4/Manifest.toml`
  [1d5cc7b8] + IntelOpenMP_jll v2018.0.3+0
  [33e6dc65] + MKL v0.2.0 #master (https://github.com/JuliaComputing/MKL.jl)
  [856f044c] + MKL_jll v2020.0.166+1
  [9b87118b] + PackageCompiler v1.1.1
   Building MKL  `~/.julia/packages/MKL/1edTo/deps/build.log`
┌ Error: Error building `MKL`:
######################################################################## 100.0%
│ error during bootstrap:LoadError("/tmp/jl_QkrCIL/sysimage_packagecompiler_12e29198-85a9-11ea-36d2-75d1fdb86978.jl", 16, ErrorException("could not load library \"libmkl_rt.so\"\nlibmkl_rt.so: cannot open shared object file: No such file or directory"))
│ jl_errorf at /buildworker/worker/package_linux64/build/src/rtutils.c:77
│ jl_load_dynamic_library at /buildworker/worker/package_linux64/build/src/dlload.c:233
│ jl_get_library_ at /buildworker/worker/package_linux64/build/src/runtime_ccall.cpp:50
│ jl_get_library_ at /buildworker/worker/package_linux64/build/src/runtime_ccall.cpp:39 [inlined]
│ jl_load_and_lookup at /buildworker/worker/package_linux64/build/src/runtime_ccall.cpp:61
│ unknown function (ip: 0x7fb3f1eef2d9)
│ set_threading_layer at /home/wangc/.julia/packages/MKL/1edTo/src/MKL.jl:26 [inlined]
│ set_threading_layer at /home/wangc/.julia/packages/MKL/1edTo/src/MKL.jl:26 [inlined]
│ __init__ at /home/wangc/.julia/packages/MKL/1edTo/src/MKL.jl:44
│ unknown function (ip: 0x7fb3f1eef27d)
│ _jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2158 [inlined]
│ jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2322
│ jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1700 [inlined]
│ do_call at /buildworker/worker/package_linux64/build/src/interpreter.c:369
│ eval_value at /buildworker/worker/package_linux64/build/src/interpreter.c:458
│ eval_stmt_value at /buildworker/worker/package_linux64/build/src/interpreter.c:409 [inlined]
│ eval_body at /buildworker/worker/package_linux64/build/src/interpreter.c:817
│ jl_interpret_toplevel_thunk at /buildworker/worker/package_linux64/build/src/interpreter.c:911
│ top-level scope at /tmp/jl_QkrCIL/sysimage_packagecompiler_12e29198-85a9-11ea-36d2-75d1fdb86978.jl:61
│ jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:814
│ jl_parse_eval_all at /buildworker/worker/package_linux64/build/src/ast.c:872
│ jl_load at /buildworker/worker/package_linux64/build/src/toplevel.c:872
│ exec_program at /buildworker/worker/package_linux64/build/ui/repl.c:35
│ true_main at /buildworker/worker/package_linux64/build/ui/repl.c:108
│ main at /buildworker/worker/package_linux64/build/ui/repl.c:217
│ __libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
│ _start at /home/wangc/apps/julia-1.4.1/bin/julia (unknown line)
│
│ [ Info: Splicing in code to load MKL in /home/wangc/apps/julia-1.4.1/bin/../share/julia/base/sysimg.jl
│ [ Info: getting precompile script from: https://raw.githubusercontent.com/JuliaLang/julia/release-1.4/contrib/generate_precompile.jl
│ [ Info: PackageCompiler: creating base system image (incremental=false)...
│ ERROR: LoadError: failed process: Process(`/home/wangc/apps/julia-1.4.1/bin/julia --color=yes --startup-file=no --cpu-target native --sysimage=/tmp/jl_QkrCIL/corecompiler.ji -g1 -O0 --output-ji=/tmp/jl_QkrCIL/sys.ji /tmp/jl_QkrCIL/sysimage_packagecompiler_12e29198-85a9-11ea-36d2-75d1fdb86978.jl`, ProcessExited(1)) [1]
│
│ Stacktrace:
│  [1] pipeline_error at ./process.jl:525 [inlined]
│  [2] read(::Cmd) at ./process.jl:412
│  [3] (::PackageCompiler.var"#2#3"{String,Array{String,1},String,String,String,String})() at /home/wangc/.julia/packages/PackageCompiler/xtztx/src/PackageCompiler.jl:157
│  [4] cd(::PackageCompiler.var"#2#3"{String,Array{String,1},String,String,String,String}, ::String) at ./file.jl:104
│  [5] create_fresh_base_sysimage(::Array{String,1}; cpu_target::String) at /home/wangc/.julia/packages/PackageCompiler/xtztx/src/PackageCompiler.jl:141
│  [6] create_sysimage(::Array{Symbol,1}; sysimage_path::Nothing, project::String, precompile_execution_file::Array{String,1}, precompile_statements_file::Array{String,1}, incremental::Bool, filter_stdlibs::Bool, replace_default::Bool, cpu_target::String, script::String, base_sysimage::Nothing, isapp::Bool) at /home/wangc/.julia/packages/PackageCompiler/xtztx/src/PackageCompiler.jl:414
│  [7] top-level scope at /home/wangc/.julia/packages/MKL/1edTo/src/install.jl:107
│  [8] eval at ./boot.jl:331 [inlined]
│  [9] change_blas_library(::String) at /home/wangc/.julia/packages/MKL/1edTo/src/install.jl:105
│  [10] enable_mkl_startup() at /home/wangc/.julia/packages/MKL/1edTo/src/install.jl:82
│  [11] top-level scope at /home/wangc/.julia/packages/MKL/1edTo/deps/build.jl:5
│  [12] include(::String) at ./client.jl:439
│  [13] top-level scope at none:5in expression starting at /home/wangc/.julia/packages/MKL/1edTo/deps/build.jl:5

└ @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Operations.jl:892

Seems like the library is there in artifacts:

➜  lib pwd
/home/wangc/.julia/artifacts/e53a8013e2286a5c55afe3f297d83081ef559abe/lib
➜  lib ls
libmkl_avx.so                   libmkl_cdft_core.so     libmkl_mc3.so              libmkl_vml_avx512_mic.so
libmkl_avx2.so                  libmkl_core.so          libmkl_pgi_thread.so       libmkl_vml_cmpt.so
libmkl_avx512.so                libmkl_def.so           libmkl_rt.so               libmkl_vml_def.so
libmkl_avx512_mic.so            libmkl_gf_ilp64.so      libmkl_scalapack_ilp64.so  libmkl_vml_mc.so
libmkl_blacs_intelmpi_ilp64.so  libmkl_gf_lp64.so       libmkl_scalapack_lp64.so   libmkl_vml_mc2.so
libmkl_blacs_intelmpi_lp64.so   libmkl_gnu_thread.so    libmkl_sequential.so       libmkl_vml_mc3.so
libmkl_blacs_openmpi_ilp64.so   libmkl_intel_ilp64.so   libmkl_tbb_thread.so       mkl_msg.cat
libmkl_blacs_openmpi_lp64.so    libmkl_intel_lp64.so    libmkl_vml_avx.so
libmkl_blacs_sgimpt_ilp64.so    libmkl_intel_thread.so  libmkl_vml_avx2.so
libmkl_blacs_sgimpt_lp64.so     libmkl_mc.so            libmkl_vml_avx512.so

MLK.jl building hangs on SOME Windows 10 computers

Thanks for making MKL with Julia easier.

Recently I am doing a lot of medium sized matrix calculations and I found MKL provides 2x speedup versus OpenBLAS in my use case. Hence I tried to switch all my Julia installations to use MKL.

I tried it on 7 Windows 10 machines in total between work and home following the instructions. 5 of them finished smoothly; 2 of them hang indefinitely (at least for 6-7 hours overnight).

All machines have Windows 10 64-bit with latest update, Julia 1.4.1 installed under C:\Julia-1.4.1, and path to Julia.exe is on PATH.

Worried that some version conflict may be in play, I tried uninstalling Julia 1.4.1 and deleting everything under C:\Users\zpan\.julia, then reinstalling Julia 1.4.1, adding only PackageCompiler, and adding MKL again. The result is the same.

I looked through the issues here and found similar ones but not identical, especially no one mentioned that it worked on some but not all Windows 10 machines.

On a second attempt after terminating the stalled building process, I tried removing and re-adding MKL, then Pkg.build("MKL"; verbose=true). Here's the Julia console output in that attempt:

(@v1.4) pkg> rm MKL
   Updating `C:\Users\zpan\.julia\environments\v1.4\Project.toml`
  [33e6dc65] - MKL v0.2.0 #master (https://github.com/JuliaComputing/MKL.jl)
   Updating `C:\Users\zpan\.julia\environments\v1.4\Manifest.toml`
  [1d5cc7b8] - IntelOpenMP_jll v2018.0.3+0
  [33e6dc65] - MKL v0.2.0 #master (https://github.com/JuliaComputing/MKL.jl)
  [856f044c] - MKL_jll v2020.0.166+1

julia> using Pkg

(@v1.4) pkg> add https://github.com/JuliaComputing/MKL.jl
   Updating git-repo `https://github.com/JuliaComputing/MKL.jl`
  Resolving package versions...
   Updating `C:\Users\zpan\.julia\environments\v1.4\Project.toml`
  [33e6dc65] + MKL v0.2.0 #master (https://github.com/JuliaComputing/MKL.jl)
   Updating `C:\Users\zpan\.julia\environments\v1.4\Manifest.toml`
  [1d5cc7b8] + IntelOpenMP_jll v2018.0.3+0
  [33e6dc65] + MKL v0.2.0 #master (https://github.com/JuliaComputing/MKL.jl)
  [856f044c] + MKL_jll v2020.0.166+1

julia> Pkg.build("MKL"; verbose=true)
   Building MKL → `C:\Users\zpan\.julia\packages\MKL\1edTo\deps\build.log`
[ Info: Splicing in code to load MKL in c:\julia-1.4.1\bin\..\share\julia\base\sysimg.jl
[ Info: getting precompile script from: https://raw.githubusercontent.com/JuliaLang/julia/release-1.4/contrib/generate_precompile.jl
[ Info: PackageCompiler: creating base system image (incremental=false)...
[ Info: PackageCompiler: creating system image object file, this might take a while...
Generating precompile statements...

And just like that it stalled.

Here's information on the relevant processes after the building process stalled:

image

using existing installed MKL to use in Julia

Hi,

It was great to stumble on this package. I was just wondering if one could use somehow the existing MKL installation on local computer (known through $MKLROOT) to provide backend MKL for blas and lapack.

Cheers!

Segmentation Fault

Hi.

Julia 1.4-rc2 with MKL.jl. Just added PyPlot and ran

using Pyplot
plot(rand(100))

gives

signal (11): Segmentation fault
in expression starting at REPL[10]:1
mkl_blas_avx2_dgemm_kernel_nocopy_NN_b0 at /home/lenz/.julia/artifacts/bb7c962f2334afa0b71dc9e4c117315bf1996ac1/lib/libmkl_avx2.so (unknown line)
Allocations: 39313248 (Pool: 39305012; Big: 8236); GC: 44
Segmentation fault (core dumped)

BLAS.set_num_threads() crashes on 1.7


julia> using MKL
[ Info: Precompiling MKL [33e6dc65-8f57-5167-99aa-e5a354878fb2]

julia> BLAS.set_num_threads(4)

signal (11): Segmentation fault
in expression starting at REPL[4]:1
MKL_SET_NUM_THREADS at /home/viralbshah/.julia/artifacts/a8e009985328801a84c9af6610f94f77a7c12852/lib/libmkl_intel_ilp64.so.1 (unknown line)
lbt_set_num_threads at /workspace/srcdir/libblastrampoline/src/threading.c:86
lbt_set_num_threads at /home/viralbshah/julia/usr/share/julia/stdlib/v1.7/LinearAlgebra/src/lbt.jl:116 [inlined]
set_num_threads at /home/viralbshah/julia/usr/share/julia/stdlib/v1.7/LinearAlgebra/src/blas.jl:124
unknown function (ip: 0x7f7155f90be2)
_jl_invoke at /home/viralbshah/julia/src/gf.c:2242 [inlined]
jl_apply_generic at /home/viralbshah/julia/src/gf.c:2424
jl_apply at /home/viralbshah/julia/src/julia.h:1739 [inlined]
do_call at /home/viralbshah/julia/src/interpreter.c:117
eval_value at /home/viralbshah/julia/src/interpreter.c:206

Installation failure with "Unable to automatically install 'IntelOpenMP'"

Hi guys,

Sorry to bother you again but I tried to install MKL on a clean Julia 1.4.1 installation and got the following error message. I tried a couple of times and it always crashes during the IntelOpenMP download/installation. Do you have any idea what I'm doing wrong?

Thanks,
Benjamin

(@v1.4) pkg> add https://github.com/JuliaComputing/MKL.jl
    Cloning git-repo `https://github.com/JuliaComputing/MKL.jl`
   Updating git-repo `https://github.com/JuliaComputing/MKL.jl`
  Resolving package versions...
    Cloning default registries into `~/.julia`
    Cloning registry from "https://github.com/JuliaRegistries/General.git"
      Added registry `General` to `~/.julia/registries/General`
  Installed IntelOpenMP_jll ─ v2018.0.3+0
  Installed MKL_jll ───────── v2020.0.166+0
  Installed PackageCompiler ─ v1.1.1
Downloading artifact: IntelOpenMP
######################################################################## 100.0%#############                                                              17.4%
ERROR: Unable to automatically install 'IntelOpenMP' from '/Users/born/.julia/packages/IntelOpenMP_jll/hsAKN/Artifacts.toml'
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] ensure_artifact_installed(::String, ::Dict{String,Any}, ::String; platform::Pkg.BinaryPlatforms.Platform, verbose::Bool, quiet_download::Bool) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Artifacts.jl:894
 [3] ensure_all_artifacts_installed(::String; platform::Pkg.BinaryPlatforms.Platform, pkg_uuid::Nothing, include_lazy::Bool, verbose::Bool, quiet_download::Bool) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Artifacts.jl:958
 [4] download_artifacts(::Pkg.Types.Context, ::Array{String,1}; platform::Pkg.BinaryPlatforms.MacOS, verbose::Bool) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Operations.jl:609
 [5] download_artifacts(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}; platform::Pkg.BinaryPlatforms.MacOS, verbose::Bool) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Operations.jl:588
 [6] add(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}, ::Array{Base.UUID,1}; preserve::Pkg.Types.PreserveLevel, platform::Pkg.BinaryPlatforms.MacOS) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Operations.jl:1084
 [7] add(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}; preserve::Pkg.Types.PreserveLevel, platform::Pkg.BinaryPlatforms.MacOS, kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/API.jl:159
 [8] add(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/API.jl:112
 [9] #add#27 at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/API.jl:109 [inlined]
 [10] add(::Array{Pkg.Types.PackageSpec,1}) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/API.jl:109
 [11] do_cmd!(::Pkg.REPLMode.Command, ::REPL.LineEditREPL) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/REPLMode/REPLMode.jl:403
 [12] do_cmd(::REPL.LineEditREPL, ::String; do_rethrow::Bool) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/REPLMode/REPLMode.jl:381
 [13] do_cmd at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/REPLMode/REPLMode.jl:376 [inlined]
 [14] (::Pkg.REPLMode.var"#24#27"{REPL.LineEditREPL,REPL.LineEdit.Prompt})(::REPL.LineEdit.MIState, ::Base.GenericIOBuffer{Array{UInt8,1}}, ::Bool) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/REPLMode/REPLMode.jl:542
 [15] #invokelatest#1 at ./essentials.jl:712 [inlined]
 [16] invokelatest at ./essentials.jl:711 [inlined]
 [17] run_interface(::REPL.Terminals.TextTerminal, ::REPL.LineEdit.ModalInterface, ::REPL.LineEdit.MIState) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/REPL/src/LineEdit.jl:2354
 [18] run_frontend(::REPL.LineEditREPL, ::REPL.REPLBackendRef) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/REPL/src/REPL.jl:1055
 [19] run_repl(::REPL.AbstractREPL, ::Any) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/REPL/src/REPL.jl:206
 [20] (::Base.var"#764#766"{Bool,Bool,Bool,Bool})(::Module) at ./client.jl:383
 [21] #invokelatest#1 at ./essentials.jl:712 [inlined]
 [22] invokelatest at ./essentials.jl:711 [inlined]
 [23] run_main_repl(::Bool, ::Bool, ::Bool, ::Bool, ::Bool) at ./client.jl:367
 [24] exec_options(::Base.JLOptions) at ./client.jl:305
 [25] _start() at ./client.jl:484

My system

julia> versioninfo()
Julia Version 1.4.1
Commit 381693d3df* (2020-04-14 17:20 UTC)
Platform Info:
  OS: macOS (x86_64-apple-darwin18.7.0)
  CPU: Intel(R) Xeon(R) W-2191B CPU @ 2.30GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-8.0.1 (ORCJIT, skylake)

Building MKL.jl fails in v1.6.0

I am running into errors building MKL.jl in Julia v1.6.0-beta1, and I have confirmed that it builds fine with Julia v1.5.3 ( no errors and BLAS.vendor() returns :mkl. The full message error I get is:

(@v1.6) pkg> build MKL
    Building MKL → `~/.julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/e01175ff53c062c52b6cbe441a4382e132f7c82e/build.log`
ERROR: Error building `MKL`, showing the last 100 of log: 
best_platform = select_platform(Dict(p => triplet(p) for p in platforms))
dlopen("libjulia", RTLD_LAZY | RTLD_DEEPBIND)

'`, ProcessExited(1)) [1]

Stacktrace:
  [1] pipeline_error
    @ ./process.jl:525 [inlined]
  [2] run(::Cmd; wait::Bool)
    @ Base ./process.jl:440
  [3] run
    @ ./process.jl:438 [inlined]
  [4] (::Main.anonymous.var"#1#5"{Set{String}, String})(prec_path::String)
    @ Main.anonymous /tmp/jl_Z4lpKw:212
  [5] mktempdir(fn::Main.anonymous.var"#1#5"{Set{String}, String}, parent::String; prefix::String)
    @ Base.Filesystem ./file.jl:729
  [6] mktempdir
    @ ./file.jl:727 [inlined]
  [7] generate_precompile_statements()
    @ Main.anonymous /tmp/jl_Z4lpKw:195
  [8] top-level scope
    @ /tmp/jl_Z4lpKw:339
  [9] eval(m::Module, e::Any)
    @ Core ./boot.jl:360
 [10] top-level scope
    @ /tmp/jl_Z4lpKw:6
 [11] include(fname::String)
    @ Base.MainInclude ./client.jl:444
 [12] top-level scope
    @ none:33
in expression starting at /tmp/jl_Z4lpKw:3
[ Info: Splicing in code to load MKL in /home/michael/.local/julia-1.6.0-beta1/bin/../share/julia/base/sysimg.jl
[ Info: getting precompile script from: https://raw.githubusercontent.com/JuliaLang/julia/release-1.6/contrib/generate_precompile.jl
Precompiling project...
  ✓ MKL
1 dependency successfully precompiled in 1 seconds (7 already precompiled)
[ Info: PackageCompiler: creating base system image (incremental=false)...
[ Info: PackageCompiler: creating system image object file, this might take a while...
ERROR: LoadError: failed process: Process(`/home/michael/.local/julia-1.6.0-beta1/bin/julia --color=yes --startup-file=no --cpu-target=native --sysimage=/tmp/jl_jPBxgE/sys.ji --project=/tmp/jl_BwAXby --output-o=/tmp/jl_tTeUfB.o -e 'Base.reinit_stdio()
@eval Sys BINDIR = ccall(:jl_get_julia_bindir, Any, ())::String
@eval Sys STDLIB = "/home/michael/.local/julia-1.6.0-beta1/share/julia/stdlib/v1.6"
Base.init_load_path()
if isdefined(Base, :init_active_project)
    Base.init_active_project()
end
Base.init_depot_path()
# This @eval prevents symbols from being put into Main
@eval Module() begin
    PrecompileStagingArea = Module()
    for (_pkgid, _mod) in Base.loaded_modules
        if !(_pkgid.name in ("Main", "Core", "Base"))
            eval(PrecompileStagingArea, :(const $(Symbol(_mod)) = $_mod))
        end
    end
    precompile_files = String[
        "/tmp/jl_b29gfy"
    ]
    for file in precompile_files, statement in eachline(file)
        # println(statement)
        # The compiler has problem caching signatures with \`Vararg{?, N}\`. Replacing
        # N with a large number seems to work around it.
        statement = replace(statement, r"Vararg{(.*?), N} where N" => s"Vararg{\1, 100}")
        try
            Base.include_string(PrecompileStagingArea, statement)
        catch
            # See julia issue #28808
            @debug "failed to execute $statement"
        end
    end
end # module
include("/tmp/jl_Z4lpKw")
empty!(LOAD_PATH)
empty!(DEPOT_PATH)
'`, ProcessExited(1)) [1]

Stacktrace:
  [1] pipeline_error
    @ ./process.jl:525 [inlined]
  [2] run(::Cmd; wait::Bool)
    @ Base ./process.jl:440
  [3] run
    @ ./process.jl:438 [inlined]
  [4] create_sysimg_object_file(object_file::String, packages::Vector{String}; project::String, base_sysimage::String, precompile_execution_file::Vector{String}, precompile_statements_file::Vector{String}, cpu_target::String, script::String, isapp::Bool)
    @ PackageCompiler ~/.julia/packages/PackageCompiler/3BsME/src/PackageCompiler.jl:306
  [5] create_sysimage(packages::Vector{Symbol}; sysimage_path::Nothing, project::String, precompile_execution_file::Vector{String}, precompile_statements_file::Vector{String}, incremental::Bool, filter_stdlibs::Bool, replace_default::Bool, cpu_target::String, script::String, base_sysimage::Nothing, isapp::Bool)
    @ PackageCompiler ~/.julia/packages/PackageCompiler/3BsME/src/PackageCompiler.jl:442
  [6] top-level scope
    @ ~/.julia/packages/MKL/1aXoN/src/install.jl:128
  [7] eval
    @ ./boot.jl:360 [inlined]
  [8] change_blas_library(libblas::String)
    @ Main ~/.julia/packages/MKL/1aXoN/src/install.jl:126
  [9] enable_mkl_startup()
    @ Main ~/.julia/packages/MKL/1aXoN/src/install.jl:103
 [10] top-level scope
    @ ~/.julia/packages/MKL/1aXoN/deps/build.jl:9
 [11] include(fname::String)
    @ Base.MainInclude ./client.jl:444
 [12] top-level scope
in expression starting at /home/michael/.julia/packages/MKL/1aXoN/deps/build.jl:9

My versioninfo() is:

Julia Version 1.6.0-beta1
Commit b84990e1ac (2021-01-08 12:42 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-11.0.0 (ORCJIT, haswell)
Environment:
  JULIA_NUM_THREADS = 8

Let me know if there is any other information you need.

Bug in mkl_avx2.1.dll after a partial QR decomposition from LowRankApprox.jl ?

Note : related to this Discource thread and JuliaLinearAlgebra/LowRankApprox.jl#35

After performing a partial QR decomposition from LowRankApprox I get a julia crash throwing this error on julia 1.5.4 with MKL.jl installed
2021-04-19 18_03_33-Window

The error disappears with julia 1.6.0 using OpenBLAS.

I could not extract an MWE showing the problem from my original code, but the errror seems to show up as soon as I try to access the factors of the partial QR.

I open this issue hoping for some pointers, as it doesn't seem to stem from LowRankApprox and is maybe a bit too specific for the Discource forum.

Note that the conventional QR works fine with ohterwise the same code however.

[question] Where will the mkl libraries be installed?

Hi and thanks for this.
I have the following questions if you could help me clarify them.

1.) Where is mkl gonna be downloaded and installed?
2.) I have julia installed in a conda-env. Does that make a difference?
3.) If I install conda mkl in the same conda-env that I have julia installed would it be possible to trigger the build ] build MKL without having to download and install ]add https://github.com/JuliaComputing/MKL.jl first?

package status/stability

I am making a PR JuliaLang/julia#31570 to the Julia FAQ about BLAS where it was suggested to mention this package.

I thought I would ask the package authors/maintainers if they agree with this. This mostly hinges on whether this package is an experimental/WIP project, or something that is reasonably mature and could provide a solution for the typical reader of that FAQ entry.

MKL shared libraries and Libdl on Mac/Linux

I have been updating the VML.jl package for 1.x, which makes the vectorized function in the VML library available in Julia.
Conveniently, when one adds MKL.jl all necessary shared libraries are also added to the system, and on Windows these are also added to a path that Libdl checks, so Libdl.dlopen(:mkl_rt) works after installing MKL.

However, on Mac and Linux this is apparently not the case. There, we find

julia> Libdl.dlopen(:libmkl_rt)
ERROR: could not load library "libmkl_core"
dlopen(libmkl_rt.dylib, 1): image not found

and on Linux libmkl_rt.dylib: cannot open shared object file: No such file or directory, after adding MKL.jl.

To fix it one can take <path to MKL>/deps/usr/lib and either add to (system) environmental variable DYLD_FALLBACK_LIBRARY_PATH, or push! to Libdl.DL_LOAD_PATH in julia, or the same for LD_LIBRARY_PATH on Linux.

However, I am not sure what is being done differently on Windows. I also know that it worked 'out of the box' on Linux two months ago, because at that point I built docker images where I just added MKL.jl and VML.jl and was ready to go without any adjustments in the environmental variables

Would it be reasonable on Unix based systems to make it possible (again) for Libdl to find the installed binaries? This would make using VML and thus the full range of what MKL offers very seamless.

MKL isn't built on Windows

CI on my V0.1 branch:
https://travis-ci.com/aminya/MKL.jl/builds/142809478
https://ci.appveyor.com/project/andreasnoack/mkl-jl/builds/29837534

Travis on my patch-3 branch (before REPL-Startup fix) https://travis-ci.com/aminya/MKL.jl/builds/142824221

This shows that the problem is something external like PackageCompiler because I didn't have any issue building patch-3 at that time.

Local build spoiler:
(v1.3) pkg> add https://github.com/JuliaComputing/MKL.jl
  Updating git-repo `https://github.com/JuliaComputing/MKL.jl`
  Updating git-repo `https://github.com/JuliaComputing/MKL.jl`
 Resolving package versions...
  Updating `C:\Users\yahyaaba\.julia\environments\v1.3\Project.toml`
  [33e6dc65] + MKL v0.1.0 #master (https://github.com/JuliaComputing/MKL.jl)
  Updating `C:\Users\yahyaaba\.julia\environments\v1.3\Manifest.toml`
  [85c772de] + AbstractNumbers v0.2.0
  [537997a7]  AbstractPlotting v0.9.10  v0.9.16
  [39de3d68] - AxisArrays v0.3.3
  [e1450e63] + BufferedStreams v1.0.0
  [aafaddc9] - CatIndices v0.2.0
  [35d6a980] + ColorSchemes v3.5.0
  [ed09eef8] - ComputationalResources v0.3.0
  [150eb455] - CoordinateTransformations v0.5.0
  [dc8bdbbb] - CustomUnitRanges v0.2.0
  [2e619515] + Expat_jll v2.2.7+0
  [4f61f5a4] - FFTViews v0.3.0
  [e9467ef8]  GLMakie v0.0.8  v0.0.12
  [0862f596] + HTTPClient v0.2.1
  [bbac6d45] - IdentityRanges v0.3.0
  [2803e5a7] - ImageAxes v0.6.2
  [6a3955dd] - ImageFiltering v0.6.9
  [02fcd773] - ImageTransformations v0.8.1
  [9b13fd28] - IndirectArrays v0.5.1
  [c8e1da08] - IterTools v1.3.0
  [b27032c2] + LibCURL v0.5.2
  [522f3ed2] + LibExpat v0.6.0
  [2ec943e9] + Libz v1.0.1
  [33e6dc65] + MKL v0.1.0 #master (https://github.com/JuliaComputing/MKL.jl)
  [9b87118b] + PackageCompiler v0.6.5
  [b3c3ace0] - RangeArrays v0.3.2
  [6038ab10] - Rotations v0.13.0
  [699a6c99] - SimpleTraits v0.9.1
  [06e1c1a7] - TiledIteration v0.2.3
  [c17dfb99] + WinRPM v0.4.3

(v1.3) pkg> build MKL
  Building LibCURL ──────── `C:\Users\yahyaaba\.julia\packages\LibCURL\lWJxD\deps\build.log`
  Building WinRPM ───────── `C:\Users\yahyaaba\.julia\packages\WinRPM\BfpQI\deps\build.log`
  Building PackageCompiler  `C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\deps\build.log`
  Building MKL ──────────── `C:\Users\yahyaaba\.julia\packages\MKL\9dWbC\deps\build.log`
┌ Error: Error building `MKL`, showing the last 100 of log:
│ CRC32c  ─────────  0.009568 seconds
│ SHA  ────────────  0.175667 seconds
│ FileWatching  ───  0.087281 seconds
│ Unicode  ────────  0.010049 seconds
│ Mmap  ───────────  0.072874 seconds
│ Serialization  ──  0.880602 seconds
│ Libdl  ──────────  0.028785 seconds
│ Markdown  ───────  1.004954 seconds
│ LibGit2  ────────  2.635718 seconds
│ Logging  ────────  0.436265 seconds
│ Sockets  ────────  1.678002 seconds
│ Printf  ─────────  0.013321 seconds
│ Profile  ────────  0.223180 seconds
│ Dates  ──────────  2.114574 seconds
│ DelimitedFiles  ─  0.115828 seconds
│ Random  ─────────  0.495196 seconds
│ UUIDs  ──────────  0.019967 seconds
│ Future  ─────────  0.011228 seconds
│ LinearAlgebra  ── 10.850114 seconds
│ SparseArrays  ───  4.239812 seconds
│ SuiteSparse  ────  1.437989 seconds
│ Distributed  ────  4.812321 seconds
│ SharedArrays  ───  0.163400 seconds
│ Pkg  ──────────── 12.755205 seconds
│ Test  ───────────  0.912637 seconds
│ REPL  ───────────  0.853262 seconds
│ Statistics  ─────  0.160607 seconds
│ Stdlibs total  ── 49.844954 seconds
│ Sysimage built. Summary:
│ Total ───────  74.055858 seconds
│ Base: ───────  24.207745 seconds 32.6885%
│ Stdlibs: ────  49.844954 seconds 67.3072%
│ c:/users/yahyaaba/.julia/packages/winrpm/bfpqi/deps/usr/x86_64-w64-mingw32/sys-root/mingw/bin/../lib/gcc/x86_64-w64-mingw32/8.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: <unknown-file>:0: syntax error
│ Warning: .drectve `-export:ccalllib_C:\Users\yahyaaba\.julia\packages\MKL\9dWbC\deps\usr\bin\mkl_rt.dll,data ' unrecognized
│ c:/users/yahyaaba/.julia/packages/winrpm/bfpqi/deps/usr/x86_64-w64-mingw32/sys-root/mingw/bin/../lib/gcc/x86_64-w64-mingw32/8.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot export MKL: symbol not found
│ c:/users/yahyaaba/.julia/packages/winrpm/bfpqi/deps/usr/x86_64-w64-mingw32/sys-root/mingw/bin/../lib/gcc/x86_64-w64-mingw32/8.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot export Users: symbol not found
│ c:/users/yahyaaba/.julia/packages/winrpm/bfpqi/deps/usr/x86_64-w64-mingw32/sys-root/mingw/bin/../lib/gcc/x86_64-w64-mingw32/8.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot export ccalllib_C:: symbol not found
│ c:/users/yahyaaba/.julia/packages/winrpm/bfpqi/deps/usr/x86_64-w64-mingw32/sys-root/mingw/bin/../lib/gcc/x86_64-w64-mingw32/8.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot export packages: symbol not found
│ collect2.exe: error: ld returned 1 exit status
│ ┌ Warning: On Windows, creating file symlinks requires Administrator privileges
│ └ @ Base.Filesystem file.jl:848
│ [ Info: Replacing libblas_name in C:\Julia-1.3.1-MKL\bin\..\share\julia\base\build_h.jl
│ [ Info: Checking if we need to update PATH...
│ [ Info: Checking sysimg.jl
│ [ Info: Could not find init function in sysimg.jl
│ [ Info: Checking Base.jl
│ [ Info: Successfully modified Base.jl
│ ┌ Info: Building `inference.o`:
│ └ `'C:\Julia-1.3.1-MKL\bin\julia.exe' -C native --output-ji 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\basecompiler.ji' --output-o 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\basecompiler.o' compiler/compiler.jl`
│ ┌ Info: Building `sys.o`:
│ └ `'C:\Julia-1.3.1-MKL\bin\julia.exe' -C native --output-ji 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.ji' --output-o 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.o' -J 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\basecompiler.ji' --startup-file=no sysimg.jl`
│ ERROR: LoadError: failed process: Process(setenv(`'C:\Users\yahyaaba\.julia\packages\WinRPM\BfpQI\deps\usr\x86_64-w64-mingw32\sys-root\mingw\bin\gcc.exe' --sysroot 'C:\Users\yahyaaba\.julia\packages\WinRPM\BfpQI\deps\usr\x86_64-w64-mingw32\sys-root' -shared '-DJULIAC_PROGRAM_LIBNAME="C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.dll"' -o 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.dll' -Wl,--whole-archive 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.o' -Wl,--no-whole-archive -std=gnu99 '-IC:\Julia-1.3.1-MKL\include\julia' -DJULIA_ENABLE_THREADING=1 '-LC:\Julia-1.3.1-MKL\bin' -Wl,--stack,8388608 -ljulia -lopenlibm -m64 -Wl,--export-all-symbols`,["PATH=C:\\Users\\yahyaaba\\.julia\\packages\\WinRPM\\BfpQI\\deps\\usr\\x86_64-w64-mingw32\\sys-root\\mingw\\bin;"]), ProcessExited(1)) [1]

│ Stacktrace:
│  [1] pipeline_error at .\process.jl:525 [inlined]
│  [2] #run#565(::Bool, ::typeof(run), ::Cmd) at .\process.jl:440
│  [3] run at .\process.jl:438 [inlined]
│  [4] run_PATH(::Cmd) at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\static_julia.jl:23
│  [5] (::PackageCompiler.var"#16#18")() at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\static_julia.jl:309
│  [6] cd(::PackageCompiler.var"#16#18", ::String) at .\file.jl:93
│  [7] build_shared(::String, ::String, ::Bool, ::String, ::Bool, ::Nothing, ::Nothing, ::Cmd, ::Nothing) at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\static_julia.jl:308
│  [8] (::PackageCompiler.var"#40#41"{Bool,String})() at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\system_image.jl:46
│  [9] cd(::PackageCompiler.var"#40#41"{Bool,String}, ::String) at .\file.jl:93
│  [10] #compile_system_image#39(::Bool, ::typeof(PackageCompiler.compile_system_image), ::String, ::String) at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\system_image.jl:15
│  [11] #compile_system_image at .\none:0 [inlined]
│  [12] get_backup!(::Bool, ::String) at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\system_image.jl:63
│  [13] force_native_image! at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\api.jl:123 [inlined] (repeats 2 times)
│  [14] enable_mkl_startup(::String) at C:\Users\yahyaaba\.julia\packages\MKL\9dWbC\src\install.jl:138
│  [15] top-level scope at C:\Users\yahyaaba\.julia\packages\MKL\9dWbC\deps\build.jl:9
│  [16] include at .\boot.jl:328 [inlined]
│  [17] include_relative(::Module, ::String) at .\loading.jl:1105
│  [18] include(::Module, ::String) at .\Base.jl:31
│  [19] include(::String) at .\client.jl:424
│  [20] top-level scope at none:5
│ in expression starting at C:\Users\yahyaaba\.julia\packages\MKL\9dWbC\deps\build.jl:9
│ caused by [exception 1]
│ IOError: symlink: operation not permitted (EPERM)
│ Stacktrace:
│  [1] uv_error at .\libuv.jl:97 [inlined]
│  [2] symlink(::String, ::String) at .\file.jl:851
│  [3] probe_symlink_creation(::String) at C:\Users\yahyaaba\.julia\packages\BinaryProvider\kcGxO\src\PlatformEngines.jl:121
│  [4] #probe_platform_engines!#30(::Bool, ::typeof(BinaryProvider.probe_platform_engines!)) at C:\Users\yahyaaba\.julia\packages\BinaryProvider\kcGxO\src\PlatformEngines.jl:175
│  [5] probe_platform_engines! at C:\Users\yahyaaba\.julia\packages\BinaryProvider\kcGxO\src\PlatformEngines.jl:169 [inlined]
│  [6] __init__() at C:\Users\yahyaaba\.julia\packages\BinaryProvider\kcGxO\src\BinaryProvider.jl:28
│  [7] _include_from_serialized(::String, ::Array{Any,1}) at .\loading.jl:692
│  [8] _require_search_from_serialized(::Base.PkgId, ::String) at .\loading.jl:776
│  [9] _require(::Base.PkgId) at .\loading.jl:1001
│  [10] require(::Base.PkgId) at .\loading.jl:922
│  [11] require(::Module, ::Symbol) at .\loading.jl:917
│  [12] include at .\boot.jl:328 [inlined]
│  [13] include_relative(::Module, ::String) at .\loading.jl:1105
│  [14] include(::Module, ::String) at .\Base.jl:31
│  [15] include(::String) at .\client.jl:424
│  [16] top-level scope at C:\Users\yahyaaba\.julia\packages\MKL\9dWbC\deps\build.jl:4
│  [17] include at .\boot.jl:328 [inlined]
│  [18] include_relative(::Module, ::String) at .\loading.jl:1105
│  [19] include(::Module, ::String) at .\Base.jl:31
│  [20] include(::String) at .\client.jl:424
│  [21] top-level scope at none:5
│ Build shared library "C:\\Users\\yahyaaba\\.julia\\packages\\PackageCompiler\\4yNnV\\sysimg\\backup\\native\\sys.dll":
`'C:\Users\yahyaaba\.julia\packages\WinRPM\BfpQI\deps\usr\x86_64-w64-mingw32\sys-root\mingw\bin\gcc.exe' --sysroot 'C:\Users\yahyaaba\.julia\packages\WinRPM\BfpQI\deps\usr\x86_64-w64-mingw32\sys-root' -shared '-DJULIAC_PROGRAM_LIBNAME="C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.dll"' -o 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.dll' -Wl,--whole-archive 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.o' -Wl,--no-whole-archive -std=gnu99 '-IC:\Julia-1.3.1-MKL\include\julia' -DJULIA_ENABLE_THREADING=1 '-LC:\Julia-1.3.1-MKL\bin' -Wl,--stack,8388608 -ljulia -lopenlibm -m64 -Wl,--export-all-symbols`

│ Full log at C:\Users\yahyaaba\.julia\packages\MKL\9dWbC\deps\build.log
└ @ Pkg.Operations D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.3\Pkg\src\backwards_compatible_isolation.jl:649

Full Log

essentials.jl
ctypes.jl
generator.jl
reflection.jl
options.jl
promotion.jl
tuple.jl
pair.jl
traits.jl
range.jl
expr.jl
error.jl
bool.jl
number.jl
int.jl
operators.jl
pointer.jl
refvalue.jl
indices.jl
array.jl
abstractarray.jl
bitarray.jl
bitset.jl
abstractdict.jl
abstractset.jl
iterators.jl
namedtuple.jl
docs/core.jl
ordering.jl
sort.jl
compiler/utilities.jl
compiler/validation.jl
compiler/inferenceresult.jl
compiler/params.jl
compiler/inferencestate.jl
compiler/typeutils.jl
compiler/typelimits.jl
compiler/typelattice.jl
compiler/tfuncs.jl
compiler/abstractinterpretation.jl
compiler/typeinfer.jl
compiler/optimize.jl
compiler/ssair/driver.jl
compiler/ssair/ir.jl
compiler/ssair/domtree.jl
compiler/ssair/slot2ssa.jl
compiler/ssair/queries.jl
compiler/ssair/passes.jl
compiler/ssair/inlining.jl
compiler/ssair/verify.jl
compiler/ssair/legacy.jl
compiler/bootstrap.jl
coreio.jl
exports.jl
essentials.jl
ctypes.jl
gcutils.jl
generator.jl
reflection.jl
options.jl
promotion.jl
tuple.jl
expr.jl
pair.jl
traits.jl
range.jl
error.jl
bool.jl
number.jl
int.jl
operators.jl
pointer.jl
refvalue.jl
refpointer.jl
checked.jl
indices.jl
array.jl
abstractarray.jl
subarray.jl
views.jl
baseext.jl
ntuple.jl
abstractdict.jl
iterators.jl
namedtuple.jl
hashing.jl
rounding.jl
float.jl
twiceprecision.jl
complex.jl
rational.jl
multinverses.jl
abstractarraymath.jl
arraymath.jl
simdloop.jl
reduce.jl
reshapedarray.jl
reinterpretarray.jl
bitarray.jl
bitset.jl
multimedia.jl
some.jl
dict.jl
abstractset.jl
set.jl
char.jl
strings/basic.jl
strings/string.jl
strings/substring.jl
build_h.jl
version_git.jl
osutils.jl
c.jl
io.jl
iobuffer.jl
intfuncs.jl
strings/strings.jl
strings/search.jl
strings/unicode.jl
strings/util.jl
strings/io.jl
parse.jl
shell.jl
regex.jl
pcre.jl
show.jl
arrayshow.jl
methodshow.jl
cartesian.jl
multidimensional.jl
permuteddimsarray.jl
broadcast.jl
missing.jl
version.jl
sysinfo.jl
libc.jl
env.jl
linked_list.jl
condition.jl
threads.jl
lock.jl
task.jl
weakkeydict.jl
logging.jl
libuv.jl
uv_constants.jl
asyncevent.jl
iostream.jl
stream.jl
filesystem.jl
cmd.jl
process.jl
grisu/grisu.jl
secretbuffer.jl
floatfuncs.jl
math.jl
reducedim.jl
accumulate.jl
ordering.jl
sort.jl
fastmath.jl
Enums.jl
gmp.jl
mpfr.jl
combinatorics.jl
hashing2.jl
irrationals.jl
mathconstants.jl
printf.jl
meta.jl
channels.jl
deepcopy.jl
download.jl
summarysize.jl
errorshow.jl
stacktraces.jl
initdefs.jl
threadcall.jl
uuid.jl
loading.jl
util.jl
asyncmap.jl
experimental.jl
deprecated.jl
docs\basedocs.jl
client.jl
docs\Docs.jl
Base  ─────────── 24.207745 seconds
Base64  ─────────  3.632059 seconds
CRC32c  ─────────  0.009568 seconds
SHA  ────────────  0.175667 seconds
FileWatching  ───  0.087281 seconds
Unicode  ────────  0.010049 seconds
Mmap  ───────────  0.072874 seconds
Serialization  ──  0.880602 seconds
Libdl  ──────────  0.028785 seconds
Markdown  ───────  1.004954 seconds
LibGit2  ────────  2.635718 seconds
Logging  ────────  0.436265 seconds
Sockets  ────────  1.678002 seconds
Printf  ─────────  0.013321 seconds
Profile  ────────  0.223180 seconds
Dates  ──────────  2.114574 seconds
DelimitedFiles  ─  0.115828 seconds
Random  ─────────  0.495196 seconds
UUIDs  ──────────  0.019967 seconds
Future  ─────────  0.011228 seconds
LinearAlgebra  ── 10.850114 seconds
SparseArrays  ───  4.239812 seconds
SuiteSparse  ────  1.437989 seconds
Distributed  ────  4.812321 seconds
SharedArrays  ───  0.163400 seconds
Pkg  ──────────── 12.755205 seconds
Test  ───────────  0.912637 seconds
REPL  ───────────  0.853262 seconds
Statistics  ─────  0.160607 seconds
Stdlibs total  ── 49.844954 seconds
Sysimage built. Summary:
Total ───────  74.055858 seconds 
Base: ───────  24.207745 seconds 32.6885%
Stdlibs: ────  49.844954 seconds 67.3072%
c:/users/yahyaaba/.julia/packages/winrpm/bfpqi/deps/usr/x86_64-w64-mingw32/sys-root/mingw/bin/../lib/gcc/x86_64-w64-mingw32/8.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: <unknown-file>:0: syntax error
Warning: .drectve `-export:ccalllib_C:\Users\yahyaaba\.julia\packages\MKL\9dWbC\deps\usr\bin\mkl_rt.dll,data ' unrecognized
c:/users/yahyaaba/.julia/packages/winrpm/bfpqi/deps/usr/x86_64-w64-mingw32/sys-root/mingw/bin/../lib/gcc/x86_64-w64-mingw32/8.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot export MKL: symbol not found
c:/users/yahyaaba/.julia/packages/winrpm/bfpqi/deps/usr/x86_64-w64-mingw32/sys-root/mingw/bin/../lib/gcc/x86_64-w64-mingw32/8.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot export Users: symbol not found
c:/users/yahyaaba/.julia/packages/winrpm/bfpqi/deps/usr/x86_64-w64-mingw32/sys-root/mingw/bin/../lib/gcc/x86_64-w64-mingw32/8.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot export ccalllib_C:: symbol not found
c:/users/yahyaaba/.julia/packages/winrpm/bfpqi/deps/usr/x86_64-w64-mingw32/sys-root/mingw/bin/../lib/gcc/x86_64-w64-mingw32/8.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot export packages: symbol not found
collect2.exe: error: ld returned 1 exit status
┌ Warning: On Windows, creating file symlinks requires Administrator privileges
└ @ Base.Filesystem file.jl:848
[ Info: Replacing libblas_name in C:\Julia-1.3.1-MKL\bin\..\share\julia\base\build_h.jl
[ Info: Checking if we need to update PATH...
[ Info: Checking sysimg.jl
[ Info: Could not find init function in sysimg.jl
[ Info: Checking Base.jl
[ Info: Successfully modified Base.jl
┌ Info: Building `inference.o`:
`'C:\Julia-1.3.1-MKL\bin\julia.exe' -C native --output-ji 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\basecompiler.ji' --output-o 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\basecompiler.o' compiler/compiler.jl`
┌ Info: Building `sys.o`:
`'C:\Julia-1.3.1-MKL\bin\julia.exe' -C native --output-ji 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.ji' --output-o 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.o' -J 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\basecompiler.ji' --startup-file=no sysimg.jl`
ERROR: LoadError: failed process: Process(setenv(`'C:\Users\yahyaaba\.julia\packages\WinRPM\BfpQI\deps\usr\x86_64-w64-mingw32\sys-root\mingw\bin\gcc.exe' --sysroot 'C:\Users\yahyaaba\.julia\packages\WinRPM\BfpQI\deps\usr\x86_64-w64-mingw32\sys-root' -shared '-DJULIAC_PROGRAM_LIBNAME="C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.dll"' -o 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.dll' -Wl,--whole-archive 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.o' -Wl,--no-whole-archive -std=gnu99 '-IC:\Julia-1.3.1-MKL\include\julia' -DJULIA_ENABLE_THREADING=1 '-LC:\Julia-1.3.1-MKL\bin' -Wl,--stack,8388608 -ljulia -lopenlibm -m64 -Wl,--export-all-symbols`,["PATH=C:\\Users\\yahyaaba\\.julia\\packages\\WinRPM\\BfpQI\\deps\\usr\\x86_64-w64-mingw32\\sys-root\\mingw\\bin;C:\\WINDOWS\\system32\\WBEM;C:\\Program Files (x86)\\Common Files\\Oracle\\Java\\javapath;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\System32\\Wbem;C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\;"]), ProcessExited(1)) [1]

Stacktrace:
 [1] pipeline_error at .\process.jl:525 [inlined]
 [2] #run#565(::Bool, ::typeof(run), ::Cmd) at .\process.jl:440
 [3] run at .\process.jl:438 [inlined]
 [4] run_PATH(::Cmd) at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\static_julia.jl:23
 [5] (::PackageCompiler.var"#16#18")() at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\static_julia.jl:309
 [6] cd(::PackageCompiler.var"#16#18", ::String) at .\file.jl:93
 [7] build_shared(::String, ::String, ::Bool, ::String, ::Bool, ::Nothing, ::Nothing, ::Cmd, ::Nothing) at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\static_julia.jl:308
 [8] (::PackageCompiler.var"#40#41"{Bool,String})() at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\system_image.jl:46
 [9] cd(::PackageCompiler.var"#40#41"{Bool,String}, ::String) at .\file.jl:93
 [10] #compile_system_image#39(::Bool, ::typeof(PackageCompiler.compile_system_image), ::String, ::String) at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\system_image.jl:15
 [11] #compile_system_image at .\none:0 [inlined]
 [12] get_backup!(::Bool, ::String) at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\system_image.jl:63
 [13] force_native_image! at C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\src\api.jl:123 [inlined] (repeats 2 times)
 [14] enable_mkl_startup(::String) at C:\Users\yahyaaba\.julia\packages\MKL\9dWbC\src\install.jl:138
 [15] top-level scope at C:\Users\yahyaaba\.julia\packages\MKL\9dWbC\deps\build.jl:9
 [16] include at .\boot.jl:328 [inlined]
 [17] include_relative(::Module, ::String) at .\loading.jl:1105
 [18] include(::Module, ::String) at .\Base.jl:31
 [19] include(::String) at .\client.jl:424
 [20] top-level scope at none:5
in expression starting at C:\Users\yahyaaba\.julia\packages\MKL\9dWbC\deps\build.jl:9
caused by [exception 1]
IOError: symlink: operation not permitted (EPERM)
Stacktrace:
 [1] uv_error at .\libuv.jl:97 [inlined]
 [2] symlink(::String, ::String) at .\file.jl:851
 [3] probe_symlink_creation(::String) at C:\Users\yahyaaba\.julia\packages\BinaryProvider\kcGxO\src\PlatformEngines.jl:121
 [4] #probe_platform_engines!#30(::Bool, ::typeof(BinaryProvider.probe_platform_engines!)) at C:\Users\yahyaaba\.julia\packages\BinaryProvider\kcGxO\src\PlatformEngines.jl:175
 [5] probe_platform_engines! at C:\Users\yahyaaba\.julia\packages\BinaryProvider\kcGxO\src\PlatformEngines.jl:169 [inlined]
 [6] __init__() at C:\Users\yahyaaba\.julia\packages\BinaryProvider\kcGxO\src\BinaryProvider.jl:28
 [7] _include_from_serialized(::String, ::Array{Any,1}) at .\loading.jl:692
 [8] _require_search_from_serialized(::Base.PkgId, ::String) at .\loading.jl:776
 [9] _require(::Base.PkgId) at .\loading.jl:1001
 [10] require(::Base.PkgId) at .\loading.jl:922
 [11] require(::Module, ::Symbol) at .\loading.jl:917
 [12] include at .\boot.jl:328 [inlined]
 [13] include_relative(::Module, ::String) at .\loading.jl:1105
 [14] include(::Module, ::String) at .\Base.jl:31
 [15] include(::String) at .\client.jl:424
 [16] top-level scope at C:\Users\yahyaaba\.julia\packages\MKL\9dWbC\deps\build.jl:4
 [17] include at .\boot.jl:328 [inlined]
 [18] include_relative(::Module, ::String) at .\loading.jl:1105
 [19] include(::Module, ::String) at .\Base.jl:31
 [20] include(::String) at .\client.jl:424
 [21] top-level scope at none:5
Build shared library "C:\\Users\\yahyaaba\\.julia\\packages\\PackageCompiler\\4yNnV\\sysimg\\backup\\native\\sys.dll":
  `'C:\Users\yahyaaba\.julia\packages\WinRPM\BfpQI\deps\usr\x86_64-w64-mingw32\sys-root\mingw\bin\gcc.exe' --sysroot 'C:\Users\yahyaaba\.julia\packages\WinRPM\BfpQI\deps\usr\x86_64-w64-mingw32\sys-root' -shared '-DJULIAC_PROGRAM_LIBNAME="C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.dll"' -o 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.dll' -Wl,--whole-archive 'C:\Users\yahyaaba\.julia\packages\PackageCompiler\4yNnV\sysimg\backup\native\sys.o' -Wl,--no-whole-archive -std=gnu99 '-IC:\Julia-1.3.1-MKL\include\julia' -DJULIA_ENABLE_THREADING=1 '-LC:\Julia-1.3.1-MKL\bin' -Wl,--stack,8388608 -ljulia -lopenlibm -m64 -Wl,--export-all-symbols`

package not registered?

(v1.4) pkg> add MKL
ERROR: The following package names could not be resolved:
 * MKL (not found in project, manifest or registry)
Please specify by known `name=uuid`.

Weird bugs in QR

There's a weird bug having switched to MKL in QR:

julia> BLAS.vendor()
:mkl

julia> n = 484; A = randn(n,n); qr(A) # print fails
LinearAlgebra.QRCompactWY{Float64,Array{Float64,2}}
Q factor:
484×484 LinearAlgebra.QRCompactWYQ{Float64,Array{Float64,2}}:
 -0.0577902   -0.0867439   -0.0626759    -0.0219889    -0.073279    -0.00841823   -0.111009       0.0121898   -0.0167551    -0.0376797    -0.123544      0.0251238    0.0179369  
 -0.00373986  -0.0274326    0.0495447    -0.101917     -0.0198546    0.0875427     0.0356647      -0.12628     -0.0583913    -0.0132206    -0.029948      0.0294396   -0.000173384
 -0.0681137    0.02002     -0.0198052    -0.0269195     0.0331806    0.0358429    -0.0841126       0.060172     0.0754397    -0.0430061     0.0632899     0.0861569    0.0292563  
 -0.0323873    0.0965884   -0.0507277     0.00338019   -0.0352337    0.00485873    0.00316666      0.0353011   -0.0521405     0.010896      0.0197234     0.103812    -0.0580389  
 -0.00964432  -0.0467668   -0.0431485     0.0131913    -0.0258102    0.0178418     0.0290122       0.171011     0.0496168    -0.0395208    -0.107754     -0.0571585    0.065397   
 -0.0407691   -0.0144213   -0.028445     -0.0425612    -0.0833922   -0.0335157     0.0173387     -0.0584917   -0.0262758    -0.00906864    0.00941877    0.106451     0.0759775  
  0.0346819    0.00498422   0.0234442     0.0766556     0.0240201    0.0173921    -0.0120031       0.0528216   -0.047816     -0.0275556    -0.0198461     0.0292522   -0.0128633  
  0.028987     0.00504573   0.0393723    -0.0633709     0.0100268    0.0430567     0.00132658      0.0446642   -0.125916     -0.00826401    0.117169     -0.196652     0.0517168  
  0.0164596    0.0237051   -0.001907     -0.0256894     0.0191645    0.000269719   0.034868       -0.0866114    0.0470563    -0.205072      0.0048158     0.100112     0.190235   
 -0.0172912    0.0313139   -0.0364269     0.0515928     0.05511      0.0656697    -0.0108439       0.00543835  -0.000937632  -0.00122533    0.0207199    -0.0166339    0.00232875 
  0.0273727   -0.0622475   -0.00961386    0.120076      0.085603    -0.100745     -0.0205361     -0.0446609    0.00418882    0.0132147     0.00572279    0.0101582    0.00368734 
  0.00613171   0.00379927  -0.000365242   0.00675002   -0.0228966    0.0730133    -0.0664603       0.0157051   -0.0038425    -0.0109981     0.00418508   -0.0212724    0.00159937 
  0.028213    -0.0159355    0.00849314    0.0298        0.0111132    0.0192411    -0.00586797     -0.00297731   0.00188824    0.000951647  -0.000678938  -0.00208357  -0.00199414 
  0.0021119   -0.0235804   -0.0233217     0.0140493     0.083919    -0.0259204     0.00348043     -0.0126669   -0.00521345    5.64448e-5    0.0144223     0.00652707   0.0072245  
  0.0521133    0.100025     0.00615325    0.0124562    -0.0353485   -0.0265354    -0.0385748       0.0353898    0.0031223     0.0169247     0.00190836   -0.00998569  -0.0102581  
  0.0481878   -0.0377687   -0.042008     -0.0166716    -0.0222764    0.0876308     0.0167556      0.00384881   0.0179508     0.00158245   -0.0102125    Error showing value of type LinearAlgebra.QRCompactWY{Float64,Array{Float64,2}}:
ERROR: ArgumentError: can't repeat a string -1 times
Stacktrace:
 [1] repeat(::String, ::Int64) at /Users/sheehanolver/Projects/julia-1.3/usr/lib/julia/sys.dylib:?
 [2] print_matrix_row(::IOContext{REPL.Terminals.TTYTerminal}, ::LinearAlgebra.QRCompactWYQ{Float64,Array{Float64,2}}, ::Array{Tuple{Int64,Int64},1}, ::Int64, ::Array{Int64,1}, ::String) at ./arrayshow.jl:110
 [3] print_matrix(::IOContext{REPL.Terminals.TTYTerminal}, ::LinearAlgebra.QRCompactWYQ{Float64,Array{Float64,2}}, ::String, ::String, ::String, ::String, ::String, ::String, ::Int64, ::Int64) at ./arrayshow.jl:233
 [4] print_matrix at ./arrayshow.jl:159 [inlined]
 [5] print_array at ./arrayshow.jl:308 [inlined]
 [6] show(::IOContext{REPL.Terminals.TTYTerminal}, ::MIME{Symbol("text/plain")}, ::LinearAlgebra.QRCompactWYQ{Float64,Array{Float64,2}}) at ./arrayshow.jl:345
 [7] show(::IOContext{REPL.Terminals.TTYTerminal}, ::MIME{Symbol("text/plain")}, ::LinearAlgebra.QRCompactWY{Float64,Array{Float64,2}}) at /Users/sheehanolver/Projects/julia-1.3/usr/share/julia/stdlib/v1.3/LinearAlgebra/src/qr.jl:402
 [8] display(::REPL.REPLDisplay, ::MIME{Symbol("text/plain")}, ::Any) at /Users/sheehanolver/Projects/julia-1.3/usr/lib/julia/sys.dylib:? (repeats 3 times)
 [9] print_response(::IO, ::Any, ::Bool, ::Bool, ::Any) at /Users/sheehanolver/Projects/julia-1.3/usr/lib/julia/sys.dylib:? (repeats 2 times)
 [10] (::REPL.var"#do_respond#38"{Bool,REPL.var"#48#57"{REPL.LineEditREPL,REPL.REPLHistoryProvider},REPL.LineEditREPL,REPL.LineEdit.Prompt})(::Any, ::Any, ::Any) at /Users/sheehanolver/Projects/julia-1.3/usr/lib/julia/sys.dylib:?
 [11] run_interface(::REPL.Terminals.TextTerminal, ::REPL.LineEdit.ModalInterface, ::REPL.LineEdit.MIState) at /Users/sheehanolver/Projects/julia-1.3/usr/lib/julia/sys.dylib:?
 [12] run_frontend(::REPL.LineEditREPL, ::REPL.REPLBackendRef) at /Users/sheehanolver/Projects/julia-1.3/usr/lib/julia/sys.dylib:?
 [13] run_repl(::REPL.AbstractREPL, ::Any) at /Users/sheehanolver/Projects/julia-1.3/usr/lib/julia/sys.dylib:?
 [14] (::Base.var"#770#772"{Bool,Bool,Bool,Bool})(::Module) at /Users/sheehanolver/Projects/julia-1.3/usr/lib/julia/sys.dylib:?
 [15] run_main_repl(::Bool, ::Bool, ::Bool, ::Bool, ::Bool) at /Users/sheehanolver/Projects/julia-1.3/usr/lib/julia/sys.dylib:?
 [16] exec_options(::Base.JLOptions) at /Users/sheehanolver/Projects/julia-1.3/usr/lib/julia/sys.dylib:?
 [17] _start() at /Users/sheehanolver/Projects/julia-1.3/usr/lib/julia/sys.dylib:?

julia> n = 483; A = randn(n,n); qr(A) # print works fine
LinearAlgebra.QRCompactWY{Float64,Array{Float64,2}}
Q factor:
483×483 LinearAlgebra.QRCompactWYQ{Float64,Array{Float64,2}}:
 -0.0249015   -0.0518907    0.000924392   0.104335    -0.0754571    0.0271224    0.055159        0.065907      0.0300188    -0.0106723     0.0302988    -0.0131585    -0.0029461  
 -0.0270132   -0.0766336    0.00254748   -0.0329588    0.027987     0.0188075    0.0798637       -0.00784294    0.0478472    -0.093588      0.0143143    -0.0984016    -0.0132033  
 -0.0733817    0.0199927   -0.0589503    -0.0199216    0.00296638  -0.00117813   0.0358653        0.00944687    0.00168951    0.0702384     0.0165236    -0.0126261    -0.0075649  
 -0.0313445   -0.0219855    0.00402091   -0.0752593   -0.00039497   0.00975993   0.0229251        0.0383956    -0.00159067    0.142136      0.0788712     0.109497     -0.0515125  
  0.0823574   -0.0344612    0.0107304     0.0202982   -0.0920863   -0.0170093    0.00331464       0.0223146     0.00044575    0.0499538     0.0849058    -0.0294194    -0.045855   
 -0.00556328  -0.0176424    0.0446392    -0.00978899   0.0525863   -0.034546    -0.105706        0.0201455    -0.0919161     0.133348     -0.0563324     0.124673      0.103424   
  0.0503143   -0.0145971   -0.00793476    0.0210752    0.0573576    0.00555186  -0.0400595        0.0132982    -0.107726      0.0978451     0.0230218    -0.0281644    -0.0998904  
  0.099031    -0.0810703    0.00861482    0.014051     0.00854268  -0.0646939    0.0460246       -0.0149089     0.134953     -0.0347184    -0.0013069    -0.0176748     0.00643898 
 -0.0437479   -0.0603964   -0.0607605     0.0638396    0.0367157   -0.0102933    7.24563e-6       0.262906     -0.174937     -0.0488412     0.0935912     0.0261064    -0.0323967  
 -0.0393987   -0.0177394   -0.0346044    -0.0161803    0.0566009   -0.0576336    0.00847354      -0.0106392     0.0141378     0.0146214    -0.0218814     0.00416236    0.0107098  
  0.0433662   -0.060271     0.101753     -0.00891745   0.00544646   0.0443699   -0.0112812      -0.0117139     0.0079493    -0.0133889    -0.0019938    -0.0129461    -0.00546511 
  0.0430931    0.0470016    0.0718445     0.0211053   -0.00680193  -0.0781179    0.0724576       -0.00400717    0.00639718   -9.15682e-5   -0.0137715     0.0184556     0.0311263  
 -0.00467215  -0.00716315  -0.0352589     0.00187421  -0.0155255   -0.0944668    0.0199364       -0.0146744     0.0150947     0.0287353    -0.0160614     0.00356859    0.0124082  
  0.0111559    0.0154571   -0.0657469    -0.0439867    0.070416     0.0455523   -0.00614672      -0.00148643    0.0121327    -0.00310714    0.002088      0.00171534   -0.00635511 
 -0.0482623   -0.144731     0.0464111    -0.0275592   -0.0285804   -0.00173621   0.0839167        0.0100291     0.00906975   -0.0163874     0.0107073    -0.00439209   -0.000425541
 -0.0646957   -0.0125203   -0.0751348    -0.0116688   -0.00485501  -0.0396554   -0.0706654       0.00127808    0.00735017    0.0213525    -0.000997599  -0.0046316    -0.000935436
  0.0526766    0.0426672   -0.00105752    0.0352262   -0.0295359   -0.0421264   -0.080611        -0.00217128   -0.026513      0.0131103    -0.00210256    0.00316881    0.000954189
  0.00718827  -0.0113491    0.0564919    -0.0104919   -0.00388851  -0.0176907   -0.00535471      -0.00932856    0.00982162    0.00144688   -0.00311885   -0.00152984    0.00382702 
 -0.0424105    0.0184643    0.036352      0.047369     0.0548907   -0.0100337   -0.0202748       -0.00270694    0.00230104   -0.00358605   -0.0131922    -0.00146009    0.00534459 
  0.0237289    0.00277782   0.0946711    -0.0399614   -0.0574425    0.0113326    0.0372009        0.00432436    0.00303282   -0.00559725    0.00958837    0.00547596   -0.00323275 
 -0.0136052   -0.0344289    0.0228424    -0.0321605    0.00573453   0.00468136   0.0188294      -0.00675594    0.00707708   -0.00065158   -0.00138186   -0.00233378    0.00125605 
 -0.00900173   0.0196331   -0.0111638     0.0687034   -0.0306518   -0.0085079    0.0545122        0.0107342    -0.00329271   -0.0122563    -0.00220686   -0.000767705   0.01035    
  0.068069     0.0431761    0.0563482    -0.0272968   -0.0208955    0.0401186   -0.0358835       -0.00706176    0.000589892   0.00124118    0.00259692   -0.00159707   -0.00871398 
  0.0316627    0.0704645   -0.0230046     0.00787984  -0.0351839   -0.0235177   -0.0379283        0.00447598   -0.0149389     0.0157097     0.00183687    0.0073082    -0.000499287
 -0.00829949  -0.0612177    0.00627336    0.0220357   -0.0447714    0.00409866   0.0972058        0.00380247    0.0159286    -0.0204538     0.00369396   -0.00848564    0.00517718 
 -0.0337441    0.0228612   -0.0477529     0.0109735   -0.030609    -0.0504193   -0.000952619    -0.0125071     0.0134776     0.0206926    -0.00821471   -0.00122841    0.0086467  
 -0.0643595   -0.0642093    0.000440594  -0.06269     -0.0302211    0.0290307    0.00231913       0.0130819     0.00324625   -0.00199871    0.013181     -0.00326787   -0.00882354 
  0.0555072   -0.050871    -0.0220937    -0.0175889    0.0662041    0.0699062    0.0546089       -0.000656918   0.00547191   -0.0190526     0.00416462   -0.00353321   -0.00644811 
 -0.00820804   0.0587183    0.0179078    -0.108031    -0.0776316    0.019265     0.0390453        0.00122556    0.0127996     0.0116284     0.0140591     0.00176559   -0.00406071 
  0.030564    -0.0346818   -0.0894579    -0.00098964   0.0591033    0.0309473   -0.00250974      -0.0110821     0.00341251    0.00104438   -0.00633968   -0.0079011    -0.000952198
  0.0166465   -0.00313715   0.0704962     0.0373594   -0.127224    -0.00655764   0.0419687      -0.000285997   0.00887767   -0.00418974    0.00538194   -0.0122466     0.00321125 
  0.0126882    0.0159593    0.0627137     0.0490656   -0.0382746    0.0169678   -0.0280823        0.00460563   -0.00716239   -0.0140686     0.00506539   -0.0107733    -0.00516384 
 -0.016399    -0.0185516   -0.00358221    0.00928784   0.0596231   -0.0245786   -0.0159056        0.0122214     0.00161254   -0.0102709    -0.00270113    0.00988232    0.00210912 
                                                                                                                                                                               
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.0312214     0.0555354    -0.0946384    -0.0397907     0.0604623    -0.0132759  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.106743     -0.02711      -0.0371715    -0.0184838    -0.117186     -0.0217336  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0              0.0030648     0.0563425    -0.0768368    -0.00810643   -0.0195917     0.00281817 
  0.0          0.0          0.0           0.0          0.0          0.0          0.0              0.0177873    -0.00364046    0.133106     -0.0455224     0.0773899     0.0127905  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0            -0.0647018    -0.0643974     0.0585588     0.119419     -0.0343732     0.0166094  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.06299       0.138397     -0.137607     -0.0156241     0.0550285     0.0413543  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.00430195   -0.0381036     0.00813587    0.059841     -0.077449     -0.0173124  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0              0.0260302    -0.00584844    0.0813015     0.00222932   -0.0223113     0.0469436  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.0304577     0.024325     -0.0834081    -0.119448      0.00606613    0.0388678  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             0.0156924    -0.0141795     0.148219      0.00840472    0.0901099    -0.11707    
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.055151     -0.117489      0.0135411     0.0352804     0.0729884     0.0764353  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.062354     -0.0147255    -0.00432932    0.0172986    -0.0296391    -0.0270023  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.137902     -0.0371301    -0.016185      0.126667      0.0128481     0.0238369  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.0834388    -0.0342596     0.0399181     0.0838564    -0.13858       0.0238073  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0            -0.0302294     0.122406      0.086954     -0.0305761     0.0643015    -0.040479   
  0.0          0.0          0.0           0.0          0.0          0.0          0.0              0.0533176    -0.000503303   0.0141107    -0.0392035     0.0222326    -0.0362383  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0              0.0417552     0.0598361    -0.0538293    -0.163306     -0.0368253     0.0403986  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0              0.0118942    -0.0481534     0.0462109    -0.13279      -0.120733     -0.0149376  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0              0.0662254     0.0474464    -0.0243673     0.0611626    -0.0652863     0.027061   
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             0.00866964    0.0464758    -0.0545316    -0.0377248     0.0790059    -0.0210589  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.063426      0.0998872    -0.0910774     0.0351425    -0.12827      -0.0515609  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0              0.0293748    -0.00709628    0.0738368    -0.0541403    -0.0339347    -0.06729    
  0.0          0.0          0.0           0.0          0.0          0.0          0.0              0.103591      0.0246608     0.0821386     0.00778802   -0.0560345    -0.0152666  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.105617     -0.119496      0.0498648    -0.165132     -0.065241      0.03558    
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             0.109491     -0.0709055     0.0513631    -0.0739883     0.110591      0.0527803  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.120959      0.111688     -0.0153085     0.0612713     0.0231653     0.0748949  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0              0.0725278    -0.0327385    -0.175526     -0.0683647     0.0752724     0.0435966  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0              0.0960756    -0.0697585     0.0577504     0.0206707    -0.0326192     0.060039   
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.0938066     0.141312      0.0226381    -0.0731127     0.0018524     0.0163336  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0            -0.0288441    -0.10258       0.0252184    -0.00285346    0.0340379    -0.0260044  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0             -0.0858779     0.0403937    -0.0110039    -0.00312941    0.0200139    -0.0522846  
  0.0          0.0          0.0           0.0          0.0          0.0          0.0              0.0416873    -0.048252     -0.0399231     0.0788611    -0.0159214     0.0954115  
R factor:
483×483 Array{Float64,2}:
 -21.6515   0.0171564  -0.508153    0.624091   0.486636    -1.49867    0.976601    0.168518     -0.297742     0.975439    -0.800968    0.80013     -0.0765228   -0.45365     -0.0540741 
   0.0     22.2655      2.43594     0.373999  -1.54483      1.3525     0.180966    1.24812        0.391076    -0.435915    -0.803169    0.840603    -1.10428     -0.338175     0.844093  
   0.0      0.0        21.9552      0.172554  -0.459709     0.322091  -0.264503    0.961303       0.944482    -0.562587    -2.9073      0.916061    -0.224991    -1.38893     -0.158312  
   0.0      0.0         0.0       -21.1623    -0.0187371   -1.89974    0.849353    0.0581143      1.07565      0.845267     0.0850439  -0.576692     1.46721      1.25107     -2.14902   
   0.0      0.0         0.0         0.0       21.4179      -0.645586  -0.092248    1.13607       -0.280858     1.84881      0.0519711   0.915667     0.0696652   -0.0694474    0.757111  
   0.0      0.0         0.0         0.0        0.0        -22.8696     0.774722    0.591925      0.0268948   -0.00240682  -0.115291    0.0217497   -0.0793282    1.3444      -0.363589  
   0.0      0.0         0.0         0.0        0.0          0.0       21.8051     -1.36204       -1.59328      1.01644      0.0771453   1.13567      0.259703     0.579387    -1.39629   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0       -22.367          1.16953      0.866782    -0.189021    0.838525    -0.311488     0.373471     0.327062  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -1.43892     -1.52762      0.224773   -0.712942     1.36971      0.0320684   -0.27547   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -0.775276     0.4473       0.579476    1.56267     -0.813518    -0.481106    -2.57764   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           0.102595     1.30547     -0.754998    0.00663382   2.59728     -0.115923    -0.180523  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            1.34898      1.29513      1.61375    -0.379495     0.364391    -0.606245     0.69058   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.404941    -0.261157     0.496401    0.577861    -0.209339    -1.49321      0.155835  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.911226    -2.4909      -0.270615   -0.0845864    2.39953     -1.09946      0.485127  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.0157897    0.194897    -0.496525   -1.44615     -0.275142    -2.01383      0.131799  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           0.998568    -0.755851    -0.675508    1.01766     -0.337852    -1.13044     -0.680016  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -1.90308      1.87721     -1.43264    -0.881414     0.422913    -0.615584     0.274368  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.568327     0.123649     0.437886    1.37711     -0.247289     0.412332     0.267157  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.336178    -1.03451     -0.646149   -0.747907     1.38925     -1.21873      0.715515  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.595689    -0.62052     -0.798285   -0.0757942   -1.46635     -0.0813894    1.20571   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0          -0.865506    -1.61625      0.171485    0.268394     0.247927    -1.35086     -0.745075  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -0.982674    -0.669739     1.05736    -0.568381     2.12928      1.65388      1.13357   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.849168     0.646526     1.23836     0.327563    -1.50043     -1.04198      0.00443543
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.204636     0.626393     1.99119     1.55697      0.17386      1.27579     -0.217747  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.284303     2.76146      0.0870307  -0.544359     0.256107     3.29476      0.42641   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0          -0.445591     0.20399      1.15556     0.0413816   -0.455794     0.914793    -0.0808609 
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            2.00697     -0.325631    -1.44478     0.588858    -0.449795    -1.08175      0.982287  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.162064    -0.160391     0.439477   -2.93971      0.532062    -0.0398259    1.02266   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.53822     -1.26208      0.346209    0.432591     0.344585    -0.00145353   0.993093  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -0.54269     -1.06518     -0.814028    0.00726936   0.032539     0.914841    -0.277829  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           1.01815      0.997468     0.653916    1.36971     -0.980333     0.429425    -0.0197147 
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -1.21311     -1.06844      0.409946    0.9802      -0.0941172   -0.934315     0.700044  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            1.41379     -1.19447      0.265006   -0.719046     0.158285    -0.310013    -0.589076  
                                                                                                                                                                                     
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.619327     0.362833     1.53068     1.42219      0.0397879    0.719209     1.05691   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -0.612577     0.0619528    0.278077    0.809339     0.348964    -0.399783    -0.199337  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.551835     2.94366     -0.679237    0.600077     0.246244     2.015        0.32783   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            1.25651      1.07708      0.618139   -1.05694      0.0138438   -0.549357     0.680802  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0          -0.523664     0.508459     0.971484    0.258112    -1.43624     -0.325502     0.514737  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -0.0301244   -0.926876    -0.951746    0.205165    -0.706582    -0.904223    -0.322702  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.329346     1.31511      0.432803   -1.35089     -0.749468     1.42168     -0.988313  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.00230564  -1.4892      -2.12844     0.124401     0.302622    -1.29754      0.688229  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            3.26524      0.0906937   -0.571513   -0.31155      0.10283      0.512506     0.0174535 
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0          -1.33746     -0.66717      0.694524    1.13049     -1.0273      -0.224573    -0.104344  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -0.668995     0.618415    -1.05759     0.203257    -0.903048     0.171241    -0.422539  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.711834    -1.08631      0.68973    -0.6282      -0.526071     1.42757      1.67952   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -2.10057      0.932043    -0.0664385   0.644       -0.238821     1.13226      0.282767  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.0970338    0.526773    -2.04493     0.590263    -0.25748      2.49036      0.766059  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0          -1.1962      -1.08858     -0.565714    1.03439     -0.379295    -0.302753    -0.0418436 
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -1.9218      -0.544024    -0.30664    -0.460051     0.254893    -2.94086      0.405773  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.665308     1.4325      -1.56818     0.773134    -0.71104      1.23333      0.0473294 
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -0.254052    -1.14191      1.21732    -0.40149      1.19438     -0.799822    -0.633425  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            1.61918      0.445788     0.374504    1.44926      0.177477     0.972444    -0.994493  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           1.2885      -0.379887    -0.49045     1.41109      0.707087     1.97329      0.86305   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -0.59892      0.726913    -0.0566336   0.231637     2.55399      0.615371    -0.992322  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            1.05762      0.272772     0.0153775  -0.87045     -0.083238    -0.72526     -0.0856628 
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -0.00454049  -0.747103     0.111211    1.87139      0.984404    -0.906919    -1.67089   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -0.537545     0.527867    -1.93964     0.825103     0.720188    -0.0135832   -0.217635  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0          -1.0099      -0.63585      0.312099    0.612675    -1.12342     -0.480454    -1.10784   
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           -2.17146      1.58711     -0.250468    0.490343    -0.642919     0.384992    -0.684386  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.0          2.56386      2.4425      0.0325637   -0.122201    -0.399638    -0.152276  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.0          0.0          1.23014    -1.79395     -0.00772072  -0.358911     0.288026  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.0          0.0          0.0         0.644317     0.567013     1.27498      0.186579  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0           0.0          0.0          0.0         0.0         -1.62425      0.728791     0.153942  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.0          0.0          0.0         0.0          0.0          0.843138    -0.275699  
   0.0      0.0         0.0         0.0        0.0          0.0        0.0         0.0            0.0          0.0          0.0         0.0          0.0          0.0          0.538852  

Renaming BLAS name only locally?

Dear folks,

I am working on a cluster and I cannot open/rename the libblas_name since it is not locally available:

┌ Error: *Error building MKL:
*│ *[ Info: Replacing libblas_name in
.../shared/julia/1.3.1/bin/../share/julia/base/build_h.jl
*│ *ERROR: LoadError: SystemError: opening file
.../shared/julia/1.3.1/bin/../share/julia/base/build_h.jl":
Permission denied

How can I install MKL nevertheless?

Best,
V.

Using new PackageCompiler

New PackageCompiler is now on Master. It makes sense to switch to the new system as soon as possible since the old package will not be supported anymore.

`ERROR: Unable to find compatible target in system image.` on server with Intel Xenon CPU

Dear all,
I encounter a strange issue with starting any julia process on a remote server with the following oputput for lscpu

$ lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                24
On-line CPU(s) list:   0-23
Thread(s) per core:    2
Core(s) per socket:    6
Socket(s):             2
NUMA node(s):          2
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 44
Model name:            Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz
Stepping:              2
CPU MHz:               2660.137
BogoMIPS:              5319.80
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              12288K
NUMA node0 CPU(s):     0,2,4,6,8,10,12,14,16,18,20,22
NUMA node1 CPU(s):     1,3,5,7,9,11,13,15,17,19,21,23

I have downloaded the generic julia binaries locally and added the MKL.jl package and built it with the package manager.
Afterwards I get the following output:

$ julia -v
julia version 1.4.1
$ julia
ERROR: Unable to find compatible target in system image.

To check, I downloaded the generic binaries again without adding MKL.jl and I can start the REPL:

$ julia2/julia-1.4.1/bin/julia
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.4.1 (2020-04-14)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

julia>

EDIT: I have no admin/root privileges on the server.

Improve REPL latency

Currently, the new system image doesn't include the precompile information in generate_precompile.jl. Once JuliaLang/julia#30367 is included in a Julia release, it should be possible to fix this issue and therefore match the latency of the official binaries.

Have a way to make MKL the BLAS for BB libraries

I wonder if we can do something to also replace the linking to openblas in BB libraries with MKL.

In the past, for linux systems, I have often done this with symlinks (or copies). So long as everything is linked against a libblas.so and that library then points to a compliant BLAS implementation, you can usually swap one with another. I don't know if this would work with MKL today.

cc @giordano

How to uninstall?

I installed this packages to test the installing process to help my friends. However, my CPU is AMD CPU. And when I use PyCall. It sends errors that Intel MKL ERROR: Parameter 13 was incorrect on entry to SGEMM . So I want to uninstall it. Do you have any suggestion?

I just typed rm MKL .It didn't work.

julia> using LinearAlgebra

julia> BLAS.vendor()
:mkl

Clean up downloads folder after installation

After installation, the downloaded MKL binaries are still left inside /deps/usr/downloads. This amounts to almost 500Mb in my case.

Manually removing these files is easy, but it might be nice for other users to get back some disk space.

Not working on Macbook

I followed all the readme instructions:

] add https://github.com/JuliaComputing/MKL.jl
] build MKL
using LinearAlgebra
BLAS.vendor()

I got
:openblas64

Build failing on mac with Julia 1.4.2

Just hangs:

➜  ~ exec '/Users/viral/Desktop/Julia_Releases/Julia-1.4-mkl.app/Contents/Resources/julia/bin/julia'
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.4.2 (2020-05-23)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

(@v1.4) pkg> add https://github.com/JuliaComputing/MKL.jl
    Cloning git-repo `https://github.com/JuliaComputing/MKL.jl`
   Updating git-repo `https://github.com/JuliaComputing/MKL.jl`
   Updating registry at `~/.julia/registries/General`
   Updating git-repo `https://github.com/JuliaRegistries/General.git`
  Resolving package versions...
  Installed PackageCompiler ─ v1.1.1
   Updating `~/.julia/environments/v1.4/Project.toml`
  [33e6dc65] + MKL v0.2.0 #master (https://github.com/JuliaComputing/MKL.jl)
   Updating `~/.julia/environments/v1.4/Manifest.toml`
  [33e6dc65] + MKL v0.2.0 #master (https://github.com/JuliaComputing/MKL.jl)
  [9b87118b] + PackageCompiler v1.1.1
   Building MKL → `~/.julia/packages/MKL/1edTo/deps/build.log`

The log file only has:

➜  .julia cat ~/.julia/packages/MKL/1edTo/deps/build.log
######################################################################## 100.0%######################################################################### 100.0%

Fail to install MKL for Julia 1.4 or 1.5 (ERROR: ArgumentError: invalid version range: ">= 2020")

Did the MKL not support Julia 1.4 or higher version?

(@v1.5) pkg> add https://github.com/JuliaComputing/MKL.jl
Updating git-repo https://github.com/JuliaComputing/MKL.jl
Updating registry at C:\Users\TENG-PC\.julia\registries\General
Updating git-repo https://github.com/JuliaRegistries/General.git
Resolving package versions...
ERROR: ArgumentError: invalid version range: ">= 2020"
Stacktrace:
[1] Pkg.Types.VersionRange(::String) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\versions.jl:136
[2] VersionSpec at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\versions.jl:219 [inlined]
[3] load_package_data(::Type{Pkg.Types.VersionSpec}, ::String, ::Array{VersionNumber,1}) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Operations.jl:185
[4] deps_graph(::Pkg.Types.Context, ::Dict{Base.UUID,String}, ::Dict{Base.UUID,Pkg.Types.VersionSpec}, ::Dict{Base.UUID,Pkg.Resolve.Fixed}) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Operations.jl:459
[5] resolve_versions!(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Operations.jl:367
[6] targeted_resolve at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Operations.jl:1107 [inlined]
[7] tiered_resolve(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Operations.jl:1079
[8] _resolve at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Operations.jl:1113 [inlined]
[9] add(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}, ::Array{Base.UUID,1}; preserve::Pkg.Types.PreserveLevel, platform::Pkg.BinaryPlatforms.Windows) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\Operations.jl:1128
[10] add(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}; preserve::Pkg.Types.PreserveLevel, platform::Pkg.BinaryPlatforms.Windows, kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\API.jl:189
[11] add(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\API.jl:140
[12] #add#21 at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\API.jl:67 [inlined]
[13] add(::Array{Pkg.Types.PackageSpec,1}) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\API.jl:67
[14] do_cmd!(::Pkg.REPLMode.Command, ::REPL.LineEditREPL) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\REPLMode\REPLMode.jl:404
[15] do_cmd(::REPL.LineEditREPL, ::String; do_rethrow::Bool) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\REPLMode\REPLMode.jl:382
[16] do_cmd at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\REPLMode\REPLMode.jl:377 [inlined]
[17] (::Pkg.REPLMode.var"#24#27"{REPL.LineEditREPL,REPL.LineEdit.Prompt})(::REPL.LineEdit.MIState, ::Base.GenericIOBuffer{Array{UInt8,1}}, ::Bool) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Pkg\src\REPLMode\REPLMode.jl:546
[18] #invokelatest#1 at .\essentials.jl:710 [inlined]
[19] invokelatest at .\essentials.jl:709 [inlined]
[20] run_interface(::REPL.Terminals.TextTerminal, ::REPL.LineEdit.ModalInterface, ::REPL.LineEdit.MIState) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\REPL\src\LineEdit.jl:2355
[21] run_frontend(::REPL.LineEditREPL, ::REPL.REPLBackendRef) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\REPL\src\REPL.jl:1143
[22] (::REPL.var"#38#42"{REPL.LineEditREPL,REPL.REPLBackendRef})() at .\task.jl:356

Matrix multiplication errors with MKL v0.4.0

I updated to MKL v0.4.0 today, and noticed a problem with matrix multiplication, with the script below:

using LinearAlgebra

M = 50
N = 15

S = zeros(M * N, M * N)
G = randn(M*N, M*N)
GS = zeros(M*N, M*N)
wtil0 = randn(M*N)
Psi0 = randn(M*N)
S = wtil0 * Psi0'
println()
GS = G*S
println(norm(GS-G*S))

This prints 0.0, as expected. But if you write norm(GS-G*S) (without changing the matrices) on the REPL, the result is

julia> norm(GS-G*S)
13417.790842103748

The problem appeared on a MacBook Air 2018 (Big Sur 11.1), on an iMac 2012 (Catalina 10.15.7) and on a server running Ubuntu 20.04.2 LTS.

In the three machines, compiling Julia again to remove MKL solved the problem. A fourth machine in which building MKL v0.4.0 failed did not present this problem.

Conflict with PackageCompiler

When trying to update Julia, I get the following error message. Is this an issue on the MKL.jl side?

(v1.3) pkg> up
  Updating registry at `~/.julia/registries/General`
  Updating git-repo `https://github.com/JuliaRegistries/General.git`
  Updating git-repo `https://github.com/JuliaComputing/MKL.jl`
 Resolving package versions...
ERROR: Unsatisfiable requirements detected for package PackageCompiler [9b87118b]:
 PackageCompiler [9b87118b] log:
 ├─possible versions are: [0.5.0-0.5.1, 0.6.0-0.6.5, 1.0.0-1.0.2, 1.1.0] or uninstalled
 ├─restricted to versions 1 by MKL [33e6dc65], leaving only versions [1.0.0-1.0.2, 1.1.0]
 │ └─MKL [33e6dc65] log:
 │   ├─possible versions are: 0.2.0 or uninstalled
 │   └─MKL [33e6dc65] is fixed to version 0.2.0
 └─restricted by julia compatibility requirements to versions: [0.5.0-0.5.1, 0.6.0-0.6.5] or uninstalled — no versions left

My system:

Julia Version 1.3.0
Commit 46ce4d7933 (2019-11-26 06:09 UTC)
Platform Info:
  OS: macOS (x86_64-apple-darwin19.0.0)
  CPU: Intel(R) Xeon(R) W-2191B CPU @ 2.30GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-6.0.1 (ORCJIT, skylake)
Environment:
  JULIA_EDITOR = atom  -a
  JULIA_NUM_THREADS = 18

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.