|
From: | Felix Willenborg |
Subject: | Octave and Intel MKL |
Date: | Tue, 12 Sep 2017 23:50:16 +0200 |
User-agent: | Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 |
Dear all, I'm trying to compile octave (additionally to ATLAS) with Intel MKL and 64-bit indexing. Intel offers a guide where they try to give instructions on how to compile [1] (please notice Remi Payans comment in the comment section). Unfortunately they're not working (for me). When trying to build with the Intel Compiler, the following happens: ./configure --disable-readline --prefix=/cluster/programs/octave/4.2.1-mkl --enable-64 --with-blas="-Wl,--start-group -lmkl_intel_ilp64 -lmkl_intel_thread -lmkl_core -Wl,--end-group -liomp5 -lpthread -lm" --with-lapack="-Wl,--start-group -lmkl_intel_ilp64 -lmkl_intel_thread -lmkl_core -Wl,--end-group -liomp5 -lpthread -lm" --with-fftw3="-Wl,--start-group -lmkl_intel_ilp64 -lmkl_intel_thread -lmkl_core -Wl,--end-group -liomp5 -lpthread -lm" --with-fftw3f="-Wl,--start-group -lmkl_intel_ilp64 -lmkl_intel_thread -lmkl_core -Wl,--end-group -liomp5 -lpthread -lm" LD_LIBRARY_PATH='/cluster/programs/octave/4.2.1-mkl/lib:$MKLROOT/lib/intel64:$MKLROOT/../compiler/lib/intel64:$LD_LIBRARY_PATH' LIBRARY_PATH='/cluster/programs/octave/4.2.1-mkl/lib:$LIBRARY_PATH' CPPFLAGS='-I/cluster/programs/octave/4.2.1-mkl/include -I$MKLROOT/include -I$MKLROOT/include/fftw' LDFLAGS='-L/cluster/programs/octave/4.2.1-mkl/lib -L$MKLROOT/lib/intel64 -L$MKLROOT/../compiler/lib/intel64' CC=icc CXX=icc F77=ifort CFLAGS="-O3 -ipo- -fPIC -std=c99 -DMKL_ILP64 -DM_PI=3.1415926535897932384" F77_INTEGER_8_FLAG='-i8'With --enable-fortran-calling-convention I can specify the calling conventions f2c, visual-fortran, cray and gfortran. All options fail with [...]which is very likely attributable to the fact of wrong calling conventions (maybe somebody has here an idea). When trying Remi Payans suggestion from the comment section using the gnu compiler with mkl libraries for gnu threading ./configure --disable-readline --enable-64 --prefix=/cluster/programs/octave/4.2.1-mkl --with-blas="-lmkl_gf_ilp64 -lmkl_gnu_thread -lmkl_core -liomp5 -lpthread" --with-lapack="-lmkl_gf_ilp64 -lmkl_gnu_thread -lmkl_core -liomp5 -lpthread" --with-fftw3="-lmkl_gf_ilp64 -lmkl_gnu_thread -lmkl_core -liomp5 -lpthread -lm" --with-fftw3f="-lmkl_gf_ilp64 -lmkl_gnu_thread -lmkl_core -liomp5 -lpthread -lm" LD_LIBRARY_PATH='/cluster/programs/octave/4.2.1-mkl/lib:$MKLROOT/lib/intel64:$MKLROOT/../compiler/lib/intel64:$LD_LIBRARY_PATH' LIBRARY_PATH='/cluster/programs/octave/4.2.1-mkl/lib:$LIBRARY_PATH' CPPFLAGS='-I/cluster/programs/octave/4.2.1-mkl/include -I$MKLROOT/include -I$MKLROOT/include/fftw' LDFLAGS='-L/cluster/programs/octave/4.2.1-mkl/lib -L$MKLROOT/lib/intel64 -L$MKLROOT/../compiler/lib/intel64' CFLAGS="-O2 -fPIC -DMKL_ILP64 -DM_PI=3.1415926535897932384" FFLAGS="-O2 -fPIC" F77=gfortranThis is also not working when taking MKL_LP64 libraries and removing --enable64. Somehow he can not find the needed numerical functions. There I get the same messages with the difference that -lblas and -llapack are working (which was expectable). Has anybody gathered experience in that topic and can give me the desired clue in order to compile it with mkl? Looking forward to your answers. Best wishes, Felix Willenborg [1]: https://software.intel.com/en-us/articles/using-intel-mkl-in-gnu-octave -- Felix Willenborg Arbeitsgruppe Machine Learning und Exzellenzcluster Hearing4all Department für Medizinische Physik und Akustik Fakultät für Medizin und Gesundheitswissenschaften Carl von Ossietzky Universität Oldenburg Küpkersweg 74, 26129 Oldenburg Tel: +49 441 798 3945 https://www.uni-oldenburg.de/machine-learning/ |
[Prev in Thread] | Current Thread | [Next in Thread] |