Installation on managed cluster

Hi all, I just started creating these notes - so they’re obviously WIP - but maybe they are helpful:

(Feel free to ask questions, file issues, and/or make PRs!)


This is great! It would be helpful if you could also provide steps to use a system-provided MKL module, as the current docs are a bit tenuous. I note that you had started a thread on this sometime back, but the steps involved in the resolution aren’t clear.

Yeah, I’ve lost interest in this and would need to resurrect the corresponding PR.

May I ask why you want to use a system MKL?

For me, the reason was mainly to save disk space (i.e. avoid the redundancy of every user installing MKL_jll.jl separately) and I changed my view on this: While it would be “nice to have” I couldn’t care less these days about this little disk space on an HPC cluster :slight_smile:
(Also the fundamental issue is that we don’t have prevent overridden artifacts from downloading by KristofferC · Pull Request #3076 · JuliaLang/Pkg.jl · GitHub yet.)

If your motivation isn’t saving disk space than Add mkl_provider option to support using "system" MKL by carstenbauer · Pull Request #84 · JuliaLinearAlgebra/MKL.jl · GitHub (or even a simplified version of it) is enough.

@jishnub I’ve resurrected the PR. Should be close to the finish line now (it works fine for me locally).

1 Like

May I ask why you want to use a system MKL?

I had assumed that the sysadmins would be able to build MKL to play better with AMD EPYC cores, on which the default MKL that’s downloaded seems not to obtain any multi-threading at all. Although, I don’t know whether this is the case one way or the other.

Thank you very much for your effort, in any case

You don’t “build MKL” since there is no source code to build to start with. The AMD trick consists of preloading a library which implements a single function which turns on not-too-bad kernels for AMD CPUs, but that works also with JLLs and it’s tangential to what’s the provider of your MKL