it-swarm.com.de

Installieren Sie Scipy mit MKL über PIP

Ich benutze PIP, um Scipy mit MKL zu installieren, um die Leistung zu beschleunigen. Mein Betriebssystem ist Ubuntu 64-Bit. Mit der Lösung aus dieser question erzeuge ich eine Datei .numpy-site.cfg 

[mkl]
library_dirs=/opt/intel/composer_xe_2013_sp1/mkl/lib/intel64/
include_dirs=/opt/intel/mkl/include/
mkl_libs=mkl_intel_lp64,mkl_intel_thread,mkl_core,mkl_rt
lapack_libs=

Diese Datei hilft mir, Numpy erfolgreich mit MKL zu installieren. Wenn Sie jedoch dieselbe Datei verwenden, wird bei der Installation von Scipy der Fehler angezeigt

ImportError: libmkl_rt.so: cannot open shared object file: No such file or directory

Ich benutze auch

export LD_LIBRARY_PATH=/opt/intel/composer_xe_2013_sp1/mkl/lib/intel64

aber das problem ist immer noch dasselbe.

Weiß jemand, wie man dieses Problem löst? Ich möchte Scipy nicht manuell installieren, also gibt mir jemand ein paar Tipps, um das Problem zu beheben.

18
tndoan

Intel hat für PyPI Räder von Paketen wie Numpy, Scipy und Scikit-Learn veröffentlicht. Diese Räder wurden während der Verknüpfung mit Intel MKL gebaut und beinhalten verschiedene Optimierungen. 

Wenn Sie Scipy mit Intel MKL erstellen möchten:

#Remove existing Numpy and/or Scipy:
pip uninstall numpy scipy -y
#Install scipy built with Intel MKL:
pip install intel-scipy

Weitere Informationen hier

5
t7t0t0t7t

Ich habe Win10 64Bit mit Python 3.6.2. Ich habe Scipy über http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy installiert.

Ich habe folgende Schritte befolgt:

  • Schritt 1: Deinstallieren Sie, wenn Sie eine ältere Version von .p. Haben. pip deinstallieren numpy
  • Schritt 2: Laden Sie numpy-1.13.1 + mkl-cp36-cp36m-win_AMD64.whl mit MKL (Math Kernel Library) von unten herunter http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
  • Schritt 3: Kopieren Sie die heruntergeladene Datei an einen anderen Ort und starten Sie den Befehl Eingabeaufforderung von diesem Ort aus.
  • Schritt 4: Führen Sie diesen Befehl aus pip install -U numpy-1.13.1 + mkl-cp36-cp36m-win_AMD64.whl
  • Schritt 5: Laden Sie jetzt die scipy-Bibliothek von, .__ herunter. http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy
  • Schritt 6: Kopieren Sie die heruntergeladene Datei an den gleichen Ort, an dem numpy Kopiert ist.
  • Schritt 7: Führen Sie in der CMD-Eingabeaufforderung diesen Befehl aus pip install scipy-0.19.1-cp36-cp36m-win_AMD64.whl

Erledigt!

5
Prabhu

Wenn Sie Probleme bei der Installation oder Ausführung mit einer bestimmten Version haben, deinstallieren Sie sie und installieren Sie sie anschließend

Schritt 1:

pip uninstall -v numpy

Schritt 2: Laden Sie die Raddatei herunter und installieren Sie sie

pip install -U numpy-1.13.0+mkl-cp36-cp36m-win_AMD64.whl

In diesem Beispiel lautet der Name der Raddatei "numpy-1.13.0 + mkl-cp36-cp36m-win_AMD64.whl "

4

Seit dieser Frage sind 2 Jahre vergangen.

Es gibt jetzt Numpy/Scipy-Laufräder für Linux, die einen für avx2 kompilierten Openblas verwenden, sodass Sie ohne Paketbildung eine viel bessere Leistung erzielen können. Möglicherweise müssen Sie ein Upgrade von pip durchführen, um das Rad installieren zu können:

pip install --upgrade pip
pip install numpy scipy

Wenn Sie MKL möchten, können Sie Anaconda oder Intel Distribution for Python installieren. Sie verwenden conda anstelle von pip zum Verwalten von Paketen. Sie sind jedoch kostenlos und verteilen Pakete, die alle Abhängigkeiten enthalten, einschließlich MKL.

3
rscohn2

Ich habe dieses Problem in den letzten Wochen auf: Windows 10 64-Bit-Python 3.5.2

Mein Workaround:

Erstes: pip install wheel

Weiter: Download Numpy und Scipy aus Gholkes Repo Numpy und SciPy

Dann: 

pip install numpy_package.whl

pip install scipy_package.whl

1
Andreas GS

Da die eigentliche Frage selbst nicht beantwortet wurde, lass es mich versuchen ...

Ich denke, das Problem hier ist im Grunde, dass die verwendeten BLAS/LAPACK-Bibliotheken über mehrere Standorte verteilt sind und Numpy dies nicht gut beherrscht.

Wir haben dies in EasyBuild behoben, wo wir seit einiger Zeit Numpy/Scipy auf Intel MKL mit diesem Patch erstellen: https://github.com/hpcugent/easybuild-easyconfigs/blob/master/easybuild /easyconfigs/n/numpy/numpy-1.8.1-mkl.patch

0
Kenneth Hoste

Für mich kam MKL mit Scipy-Bibliothek von conda install scipy

@ rscohn2-Lösung gab mir einen Hinweis zur Verwendung von Paketen.

Als Referenz enthält meine Umgebung Ubuntu, Anaconda, Python 3.6, Scipy 1.1 und MKL 2018.0. 

0
Cloud Cho