Closed Gertian closed 6 years ago
Please use code tags; I've edited your post to add them.
Dup of / related to #17946?
How did you build Julia, can you post your Make.user
? Julia 0.6.1 + LLVM 4.0 is an odd combination.
Thank you, I was not aware of this...
The article you mention does is indeed similar but for an older version of julia.
LLVM_VER=4.0.0
USE_INTEL_MKL=1
USE_INTEL_LIBM=1
My install procedure was as follows: (This may contain to much detail)
$source /opt/intel/mkl/bin/mklvars.sh intel64 ilp64
$git clone git://github.com/JuliaLang/julia.git
$ cd julia
$ git checkout v0.6.1
$ make -C deps get-llvm
$ make
and was inspired by these two posts:
[julia discourse](https://discourse.julialang.org/t/building-with-intel-mkl-on-a-knl-system/4904/4)
[stackoverflow](https://stackoverflow.com/questions/45024338/how-to-use-intel-mkl-instead-of-libopenblas-in-julia)
Apart from these two posts I had no particular reason to use LLVM 4.0.0. and would be willing to change. I could also use Intel cpp and fortrand compilers if this would be nececairy.
ps: I tried the installation procedure that is mentioned on the julia git page (using intel compilers) but this failed during compilation
It is a dup of #17946. For the solution, see https://github.com/JuliaLang/julia/issues/17946#issuecomment-289202855
@andreasnoack I just tried this solution and it did not work...
Julia Version 0.6.1
Commit 0d7248e2ff* (2017-10-24 22:15 UTC)
Platform Info:
OS: Linux (x86_64-pc-linux-gnu)
CPU: Intel(R) Core(TM) i7-7600U CPU @ 2.80GHz
WORD_SIZE: 64
BLAS: libmkl_rt
LAPACK: libmkl_rt
LIBM: libimf
LLVM: libLLVM-4.0.0 (ORCJIT, skylake)
and my Make.user was:
USE_INTEL_MKL = 1
USE_BLAS_FFLAGS += -ff2c
I also reinstalled mkl using the official intel installer for linux (just to rule out any bad behavior in that department). However I stil find;
julia> Base.runtests("linalg/arnoldi")
Test (Worker) | Time (s) | GC (s) | GC % | Alloc (MB) | RSS (MB)
signal (11): Segmentation fault
while loading /home/gertian/julia/usr/share/julia/test/linalg/arnoldi.jl, in expression starting on line 5
mkl_blas_avx2_xzdotc at /opt/intel/compilers_and_libraries_2018.1.163/linux/mkl/lib/intel64_lin/libmkl_avx2.so (unknown line)
ZDOTC at /opt/intel/compilers_and_libraries_2018.1.163/linux/mkl/lib/intel64_lin/libmkl_intel_ilp64.so (unknown line)
unknown function (ip: 0x560248c776ef)
Allocations: 8746090 (Pool: 8743985; Big: 2105); GC: 17
ERROR: A test has failed. Please submit a bug report (https://github.com/JuliaLang/julia/issues)
including error messages above and the output of versioninfo():
Julia Version 0.6.1
Commit 0d7248e2ff* (2017-10-24 22:15 UTC)
Platform Info:
OS: Linux (x86_64-pc-linux-gnu)
CPU: Intel(R) Core(TM) i7-7600U CPU @ 2.80GHz
WORD_SIZE: 64
BLAS: libmkl_rt
LAPACK: libmkl_rt
LIBM: libimf
LLVM: libLLVM-4.0.0 (ORCJIT, skylake)
Stacktrace:
[1] runtests(::String, ::Int64) at ./interactiveutil.jl:691
[2] runtests(::String) at ./interactiveutil.jl:680
Did you do make -C deps distclean-arpack
first?
I did not I'll try this now :)
and since I am trying to learn, what does this do ? Because I started from a fresh git download and if my understanding of that command is correct this should mean that issuing it doens't matter ?
update: I get exactly the same result
I also just ran ctrl-f in Make.inc and USE_BLAS_FFLAGS turned up nowhere so I don't see what this would change ?(I get the conflict with fortran though) Neither is FFLAGS, i did check and these flags were present in older versions so they are probable changed but I can't figure out what they have been changed into...
I'll just go with the usual julia for now but am very willing to try new suggestions if they come up :)
@Gertian I don't think USE_BLAS_FFLAGS
is for public consumption. It is initiated here so any value set in Make.user
is overwritten. Set FFLAGS
instead. See also https://github.com/JuliaLang/julia/pull/25298.
@andreasnoack this worked ! Thanks for all the help !
So for people with the same issue:
1) just use the official intel installer for MKL this is much easier than the AUR version then do the following steps all in the same terminal 2) source /opt/intel/mkl/bin/mklvars.sh intel64 ilp64 3) git pull julia 4) cd julia 5) git checkout v0.6.1 6) make -C deps distclean-arpack 7) change Make.user so that it contains:
USE_INTEL_MKL = 1
FFLAGS = -ff2c
8) make