Xgboost: OMP: Kesalahan #15: Inisialisasi libiomp5.dylib, tetapi ternyata libiomp5.dylib sudah diinisialisasi.

Dibuat pada 28 Okt 2016  ·  63Komentar  ·  Sumber: dmlc/xgboost

Untuk bug atau masalah penginstalan, berikan informasi berikut.
Semakin banyak informasi yang Anda berikan, semakin mudah kami dapat menawarkan
bantuan dan saran.

Informasi lingkungan

Sistem Operasi: Mac OSX Sierra 10.12.1

Penyusun:

Paket yang digunakan (python):

xgboost versi yang digunakan: xgboost 0.6a2

Jika Anda menggunakan paket python, harap berikan

  1. Versi dan distribusi python:
    Python 2.7.12
  2. Perintah untuk menginstal xgboost jika Anda tidak menginstal dari sumber
    instal pip xgboost

Langkah-langkah untuk mereproduksi

  1. dari xgboost impor XGBClassifier
    impor numpy sebagai np
    impor matplotlib.pyplot sebagai plt
    x = np.array([[1,2],[3,4]])
    y = np.array([0,1])
    clf = XGBClassifier(base_score = 0,005)
    clf.fit(x,y)
    plt.hist(clf.feature_importances_)

    Apa yang sudah kamu coba?

    Lihat pesan kesalahan:
    "OMP: Kesalahan #15: Menginisialisasi libiomp5.dylib, tetapi menemukan libiomp5.dylib sudah diinisialisasi.
    OMP: Petunjuk: Ini berarti bahwa banyak salinan runtime OpenMP telah ditautkan ke dalam program. Itu berbahaya, karena dapat menurunkan kinerja atau menyebabkan hasil yang salah. Hal terbaik yang harus dilakukan adalah memastikan bahwa hanya satu runtime OpenMP yang ditautkan ke dalam proses, misalnya dengan menghindari penautan statis runtime OpenMP di perpustakaan mana pun. Sebagai solusi yang tidak aman, tidak didukung, dan tidak terdokumentasi, Anda dapat mengatur variabel lingkungan KMP_DUPLICATE_LIB_OK=TRUE untuk memungkinkan program terus dijalankan, tetapi itu dapat menyebabkan crash atau diam-diam menghasilkan hasil yang salah. Untuk informasi lebih lanjut, silakan lihat http://www.intel.com/software/products/support/. "

Saya mencoba:
impor os
os.environ['KMP_DUPLICATE_LIB_OK']='Benar'

Itu bisa melakukan pekerjaan untuk saya. Tapi itu agak jelek.


Saya tahu ini mungkin bukan masalah xgboost, tapi saya cukup yakin masalah ini terjadi setelah saya memutakhirkan xgboost menggunakan 'pip install xgboost'. Saya memposting masalah di sini untuk melihat apakah seseorang memiliki masalah yang sama dengan saya. Saya memiliki sedikit pengetahuan tentang OpenMP. Tolong bantu!
Terima kasih sebelumnya!

Komentar yang paling membantu

Saya mencoba ini dan kesalahan berhenti!

impor os

os.environ['KMP_DUPLICATE_LIB_OK']='Benar'

Semua 63 komentar

Saya mengalami masalah yang sama ketika saya mencoba menggunakan xgboost dan matplotlib.

OS X 10.10.5
Python 2.7.12
xgboost 0.6
matplotlib 1.5.1

Saya mengalami masalah yang sama dengan xgboost dan matplotlib. Gejala yang sama...kernel mati dengan pesan kesalahan yang sama seperti yang dilaporkan oleh @symPhysics

Mac OS X 10.12.3

Python 3.5.2 | Kustom Anaconda (x86_64)| (default, 2 Juli 2016, 17:52:12)
[GCC 4.2.1 Kompatibel Apple LLVM 4.2 (clang-425.0.28)] di darwin

xgboost 0.6a2

matplotlib 2.0.0

FWIW...ini tampaknya menjadi masalah khusus MacOS. Saya tidak dapat membuat ulang masalah pada VM CentOS Linux.

Setidaknya untuk Mac,

brew uninstall libiomp clang-omp

selama Anda mendapat gcc v5 dari minuman itu datang dengan openmp

ikuti langkah-langkah di:
https://github.com/dmlc/xgboost/tree/master/python-package

Kita bisa menutup masalah ini sekarang.

Saya mencoba ini dan kesalahan berhenti!

impor os

os.environ['KMP_DUPLICATE_LIB_OK']='Benar'

Bagi saya masalah (pada Mac) telah diperbaiki dengan
instal pip xgboost
diikuti oleh
instal pip xgboost

Saya mencoba ini dan kesalahan berhenti!

impor os

os.environ['KMP_DUPLICATE_LIB_OK']='Benar'

terima kasih, itu berhasil!!!

Saya memiliki kesalahan yang sama di Mac saya dengan program python menggunakan numpy, keras, dan matplotlib. Saya menyelesaikannya dengan 'conda install nomkl'.

Saya memiliki kesalahan yang sama di Mac saya dengan program python menggunakan numpy, keras, dan matplotlib. Saya menyelesaikannya dengan 'conda install nomkl'.

terima kasih banyak, itu bekerja.

Saya memiliki kesalahan yang sama di Mac saya dengan program python menggunakan numpy, keras, dan matplotlib. Saya menyelesaikannya dengan 'conda install nomkl'.

Terima kasih juga, itu bekerja untuk saya juga.

@gpetty Anda adalah pahlawan sejati. Terima kasih!

@gptty Berhasil ! TERIMA KASIH :))

Anehnya conda install nomkl tidak berfungsi untuk saya (juga tidak menginstal libiomp clang-omp di Brew), hanya
import os os.environ['KMP_DUPLICATE_LIB_OK']='True'
bisa bekerja

brew uninstall libiomp clang-omp

Error: No such keg: /usr/local/Cellar/libiomp

Saya memiliki kesalahan yang sama di Mac saya dengan program python menggunakan numpy, keras, dan matplotlib. Saya menyelesaikannya dengan 'conda install nomkl'.

terima kasih banyak, meskipun saya tidak tahu apa itu nomkl. Saya bingung beberapa hari ketika saya menjalankan model CNN-RNN menggunakan tensorflow. Ketika saya menggunakan os.environ['KMP_DUPLICATE_LIB_OK']='True' , itu berhasil, tetapi program berjalan sangat lambat. Anda mendapatkan jawaban yang tepat.

Masalah saya sama sekali tidak terkait dengan xgboost, tetapi saya sampai di sini melalui google sehingga saya akan berbagi demi orang lain.

Saya menggunakan keras dan matplotlib diinstal melalui conda. Pengaturan KMP_DUPLICATE_LIB_OK baru saja mengubah pengalaman saya dari peringatan menjadi pengecualian/gangguan. Instal nomkl tidak mengubah apa pun untuk saya. Akhirnya saya menurunkan versi matplotlib saya dan itu memperbaiki segalanya untuk saya
conda install matplotlib=2.2.3

Untuk orang-orang yang mencari kesalahan ini di Google, solusi terbaik yang saya temukan tercantum di sini .

Situs ini mencantumkan dua metode. Saya lebih suka metode 1, yaitu masuk ke direktori anaconda3/lib dan hapus file libiomp5.dylib . Bagus dan sederhana.

Untuk orang-orang yang mencari kesalahan ini di Google, solusi terbaik yang saya temukan tercantum di sini .

Situs ini mencantumkan dua metode. Saya lebih suka metode 1, yaitu masuk ke direktori anaconda3/lib dan hapus file libiomp5.dylib . Bagus dan sederhana.

Harap berhati-hati jika Anda ingin mencoba metode 1. Semuanya macet setelah saya menghapus file dan saya harus menginstal ulang openmp. Masalah yang sama dilaporkan di tautan csdn asli (dalam bahasa Cina).

Terima kasih!!
Bagi saya di MAC:
impor os
os.environ['KMP_DUPLICATE_LIB_OK']='Benar'

Punya masalah yang sama setelah beralih dari homebrew/virtualenv yang diinstal numpy/keras/matplotlib/tensorflow ke miniconda yang diinstal. Dipecahkan dengan menjalankan conda install nomkl meskipun saya rasa keras (dan numpy) tidak akan berjalan secepat mungkin jika mereka tidak menggunakan Intel's Math Kernel Lib tetapi setidaknya kode saya masih berjalan jadi ¯\_(ツ) _/¯

@ sam1902 yang bekerja untuk saya juga -- memperbarui variabel os.environ tidak. Terima kasih!

memiliki masalah yang sama di Mac saya
Jalankan saja - conda update -n base conda
itu menginstal dan memperbarui ketergantungan yang diperlukan

Punya masalah yang sama di mac saya, coba metode yang disarankan dan berhasil

import os
os.environ['KMP_DUPLICATE_LIB_OK']='True'

Saya memiliki kesalahan yang sama di Mac saya dengan program python menggunakan numpy, keras, dan matplotlib. Saya menyelesaikannya dengan 'conda install nomkl'.

Saya menggunakan anaconda untuk menginstal nomkl. Itu memperbaiki masalah.

Juga, upaya untuk melakukan "brew uninstall..." memberikan kesalahan "Tidak ada tong seperti itu".

Saya mencoba ini dan kesalahan berhenti!

impor os

os.environ['KMP_DUPLICATE_LIB_OK']='Benar'

Perlu dicatat bahwa ini sangat tidak dianjurkan oleh para pengembang OpenMP . Dari pesan kesalahan mereka:

Hal terbaik yang harus dilakukan adalah memastikan bahwa hanya satu runtime OpenMP yang ditautkan ke dalam proses, misalnya dengan menghindari penautan statis runtime OpenMP di perpustakaan mana pun. Sebagai solusi yang tidak aman, tidak didukung, dan tidak terdokumentasi, Anda dapat menyetel variabel lingkungan KMP_DUPLICATE_LIB_OK=TRUE agar program dapat terus dijalankan, tetapi hal itu dapat menyebabkan crash atau menghasilkan hasil yang salah secara diam-diam.

conda install nomkl bekerja untuk saya.

Adakah yang bisa menjelaskan apa fungsinya dan mengapa ini memperbaiki masalah?

@georgeu2000 , saya bertanya-tanya tentang hal yang sama. Itu juga memperbaiki masalah bagi saya. Saya menggunakan Numpy, Matplotlib, Keras dan Tensorflow sebagai backend. Sepertinya saya tidak mengerti apa yang dilakukan paket itu. Ada yang bisa menjelaskan?

Terima kasih banyak.

Saya melihat beberapa benchmark antara openblas dan mkl sebelumnya, mkl tidak lebih unggul. Apakah ada alasan untuk menggunakan mkl melalui openblas? Menjelaskan sesuatu tanpa kode sumber tidak terlalu memotivasi.

Di MacOS Mojave:

conda install nomkl

berfungsi tetapi harus diturunkan:

 mkl_fft 1.0.10-py36h5e564d8_0 --> 1.0.1-py36h917ab60_0
 mkl_random 1.0.2-py36h27c97d8_0 --> 1.0.1-py36h78cc56f_0
 numexpr 2.6.9-py36h7413580_0 --> 2.6.9-py36hafae301_0
 numpy 1.15.4-py36hacdab7b_0 --> 1.15.4-py36h926163e_0
 numpy-base 1.15.4-py36h6575580_0 --> 1.15.4-py36ha711998_0
 scikit-belajar 0.20.2-py36h27c97d8_0 --> 0.20.2-py36hebd9d1a_0
 scipy 1.2.1-py36h1410ff5_0 --> 1.2.1-py36h1a1e112_0

Masalah saya sama sekali tidak terkait dengan xgboost, tetapi saya sampai di sini melalui google sehingga saya akan berbagi demi orang lain.

Saya menggunakan keras dan matplotlib diinstal melalui conda. Pengaturan KMP_DUPLICATE_LIB_OK baru saja mengubah pengalaman saya dari peringatan menjadi pengecualian/gangguan. Instal nomkl tidak mengubah apa pun untuk saya. Akhirnya saya menurunkan versi matplotlib saya dan itu memperbaiki segalanya untuk saya
conda install matplotlib=2.2.3

Hei sobat, kamu menyelamatkan pantatku

Punya masalah yang sama setelah beralih dari homebrew/virtualenv yang diinstal numpy/keras/matplotlib/tensorflow ke miniconda yang diinstal. Dipecahkan dengan menjalankan conda install nomkl meskipun saya rasa keras (dan numpy) tidak akan berjalan secepat mungkin jika mereka tidak menggunakan Intel's Math Kernel Lib tetapi setidaknya kode saya masih berjalan begitu _(ツ)_ /¯

^^^^ Inilah yang berhasil bagi saya. Terima kasih!

Terima kasih!!
Bagi saya di MAC:
impor os
os.environ['KMP_DUPLICATE_LIB_OK']='Benar'

BEKERJA UNTUK SAYA TERIMA KASIH

Di conda saya lib , saya punya beberapa libgomp :

Saya mendapatkan kesalahan yang diharapkan:

OMP: Error #15: Initializing libiomp5.dylib, but found libomp.dylib already initialized.
OMP: Hint This means that multiple copies of the OpenMP runtime have been linked into the program. That is dangerous, since it can degrade performance or cause incorrect results. The best thing to do is to ensure that only a single OpenMP runtime is linked into the process, e.g. by avoiding static linking of the OpenMP runtime in any library. As an unsafe, unsupported, undocumented workaround you can set the environment variable KMP_DUPLICATE_LIB_OK=TRUE to allow the program to continue to execute, but that may cause crashes or silently produce incorrect results. For more information, please see http://www.intel.com/software/products/support/.

Ini pasti membantu:

import os
os.environ['KMP_DUPLICATE_LIB_OK']='True'

Ini semua versi saya:

(µ_env) jespinozlt-osx:lib jespinoz$ pwd
/Users/jespinoz/anaconda/envs/µ_env/lib
(µ_env) jespinozlt-osx:lib jespinoz$ ls -lhtr | grep "omp"
-rw-rw-r--    4 jespinoz  tigr   165B Oct 28  2016 libgomp.spec
-rw-rw-r--    4 jespinoz  tigr   108K Oct 28  2016 libgomp.a
-rwxrwxr-x   11 jespinoz  tigr    62K Oct 28  2016 libgomp.1.dylib
-rwxrwxr-x    6 jespinoz  tigr   489K Oct 27 17:30 libomp.dylib
-rwxrwxr-x    5 jespinoz  tigr   176K Mar 14 13:10 libiompstubs5.dylib
-rwxrwxr-x    5 jespinoz  tigr   296K Mar 14 13:10 libiomp5_db.dylib
-rwxrwxr-x    5 jespinoz  tigr   2.7M Mar 14 13:10 libiomp5.dylib
lrwxr-xr-x    1 jespinoz  tigr    15B Apr 10 14:51 libgomp.dylib -> libgomp.1.dylib

Haruskah saya menghapus salah satunya saja? Jika demikian, haruskah saya menyimpan libiomp5.dylib alih-alih libgomp.1.dylib dan hanya symlink?

OMP: Kesalahan #15: Inisialisasi libiomp5.dylib, tetapi ternyata libiomp5.dylib sudah diinisialisasi.

OMP: Petunjuk: Ini berarti bahwa banyak salinan runtime OpenMP telah ditautkan ke dalam program. Itu berbahaya, karena dapat menurunkan kinerja atau menyebabkan hasil yang salah. Hal terbaik yang harus dilakukan adalah memastikan bahwa hanya satu runtime OpenMP yang ditautkan ke dalam proses, misalnya dengan menghindari penautan statis runtime OpenMP di perpustakaan mana pun. Sebagai solusi yang tidak aman, tidak didukung, dan tidak terdokumentasi, Anda dapat mengatur variabel lingkungan KMP_DUPLICATE_LIB_OK=TRUE untuk memungkinkan program terus dijalankan, tetapi itu dapat menyebabkan crash atau diam-diam menghasilkan hasil yang salah. Untuk informasi lebih lanjut, silakan lihat http://www.intel.com/software/products/support/.

Saya mencoba ini dan kesalahan berhenti!

impor os

os.environ['KMP_DUPLICATE_LIB_OK']='Benar'

Apakah memperbaiki masalah. Terima kasih

Saya mengalami masalah ini pada instalasi baru anaconda pada pro buku Mac baru di Anaconda mencoba menggunakan tensor-flow dan keras. saya menggunakan. 'conda update --all' dan itu memperbaiki masalah.

brew uninstall libiomp clang-omp

Error: No such keg: /usr/local/Cellar/libiomp

saya memiliki kesalahan yang sama bagaimana Anda menyelesaikannya, dan conda insatll nomkl juga tidak berfungsi
itu memberikan kesalahan
UnavailableInvalidChannel: Saluran tidak dapat diakses atau tidak valid.
nama saluran: obor
url saluran: https://conda.anaconda.org/torch
kode kesalahan: 404

Anda perlu menyesuaikan konfigurasi conda Anda untuk melanjutkan.
Gunakan conda config --show channels untuk melihat status konfigurasi Anda saat ini,
dan gunakan conda config --show-sources untuk melihat lokasi file konfigurasi.

Saya memiliki kesalahan yang sama di Mac saya dengan program python menggunakan numpy, keras, dan matplotlib. Saya menyelesaikannya dengan 'conda install nomkl'.

Saya mengalami masalah yang sama dan saya menggunakan keras, numpy dan tensorflow 1.14.
conda install nomkl menyelesaikan masalah saya! Terima kasih @gptty

Saya memiliki kesalahan yang sama di Mac saya dengan program python menggunakan numpy, keras, dan matplotlib. Saya menyelesaikannya dengan
'conda install nomkl'.

Ini bekerja untuk saya juga. Saya mendapatkan kesalahan saat menjalankan paket LightGBM, itu kesalahan setelah sejumlah baris atau sejumlah fitur tertentu.

Saya menduga itu ada hubungannya dengan penggunaan memori atau proses paralelisasi. Akan sangat bagus jika seseorang dapat menjelaskan apa sebenarnya yang dilakukan 'libomp' dan mengapa 'nomkl' menyelesaikannya. Terima kasih @gptty.

Anehnya conda install nomkl tidak berfungsi untuk saya (juga tidak menginstal libiomp clang-omp di Brew), hanya

os.environ['KMP_DUPLICATE_LIB_OK']='True'

bisa bekerja

Halo
Sama untukku tapi
conda install -c anaconda nomkl
bekerja untuk saya
Semoga membantu

Hai semua,

meskipun menggunakan os.environ['KMP_DUPLICATE_LIB_OK']='True' benar-benar tidak disukai, tetapi akhirnya, saya harus menggunakannya karena conda install -c anaconda nomkl tidak berhasil untuk saya. Ada ide lain?

gunakan os.environ['KMP_DUPLICATE_LIB_OK']='True' berfungsi tetapi tidak disarankan. gunakan Conda install nomkl terlihat berjalan tanpa akhir, harus mematikannya. gunakan conda update -n base Conda berfungsi dan memperbarui lib

Saya mencoba ini dan kesalahan berhenti!

impor os

os.environ['KMP_DUPLICATE_LIB_OK']='Benar'

Terima kasih banyak! Ini bekerja untuk saya!

impor os

os.environ['KMP_DUPLICATE_LIB_OK']='Benar'

itu bekerja untuk saya, terima kasih.

Saya memiliki kesalahan yang sama di Mac saya dengan program python menggunakan numpy, keras, dan matplotlib. Saya menyelesaikannya dengan 'conda install nomkl'.

Terima kasih Bro! Ini berhasil untuk saya!

Saya memiliki kesalahan yang sama di Mac saya dengan program python menggunakan numpy, keras, dan matplotlib. Saya menyelesaikannya dengan 'conda install nomkl'.

Terima kasih Bro! Ini berhasil untuk saya!

Saya baru saja menguji tensorflow object_detection API dan menjalankan file object_detection_tutorial.ipynb

saya menggunakan MBP 2010, menjalankan file python(3.7) di anaconda; jadi saya kira itu ada hubungannya dengan sistem 'lama' saya - saya tidak tahu wilayah mana yang saya injak di sini - mencoba mencopot xgboost, menyadari itu tidak diinstal, mencoba menginstalnya, hanya macet; mencoba conda install nomkl, dan kemudian skrip python saya sendiri tidak dapat berjalan ( illegal instruction: 4 ); nomkl yang dihapus; akhirnya bekerja ketika saya menggunakan

import os
os.environ['KMP_DUPLICATE_LIB_OK']='True'

saya masih tidak tahu bagaimana dan mengapa itu berhasil, tapi hei, itu berhasil sekarang

Terima kasih untuk ini; conda update --all adalah yang berhasil untuk saya. Menjalankan Mac OS Mojave dengan Python 3.7 Anaconda (bukan instalasi baru... tanggal dari tahun lalu).

Pembukaan kembali, jika seseorang memiliki wawasan tentang masalah ini, silakan bagikan.

Kita bisa menutup masalah ini sekarang.

LMAO

Saya mencoba ini dan kesalahan berhenti!

impor os

os.environ['KMP_DUPLICATE_LIB_OK']='Benar'

itu bekerja untuk saya thx

Bagi saya, kombinasi ini berhasil:

brew uninstall libiomp clamp-omp
conda uninstall intel-openmp -n base
conda install -c intel openmp -n myenv
conda install nomkl -n myenv

Konflik utama berasal dari brew libiomp tetapi kemudian konflik dengan conda base env dan python 3.7 env saya lebih dari openmp mengirim saya berputar-putar sampai saya menyelesaikan rantai ketergantungan/fallback. Perbedaan sumber saluran membuat perbedaan besar.

Saya mencoba ini dan kesalahan berhenti!

impor os

os.environ['KMP_DUPLICATE_LIB_OK']='Benar'

Ini bekerja untuk saya juga

Saya memiliki kesalahan yang sama di Mac saya dengan program python menggunakan numpy, keras, dan matplotlib. Saya menyelesaikannya dengan 'conda install nomkl'.

Terima kasih! Ini bekerja untuk saya mulai hari ini! Adakah yang bisa menjelaskan mengapa ini berhasil?

Kami sekarang menyediakan roda biner untuk Mac OSX, yang tertaut ke /usr/local/lib/libomp.dylib . Instal XGBoost dengan menjalankan

python -m pip install xgboost

Terima kasih ini memecahkan kasus saya. Mac saya tidak memiliki libiomp dan clamp-omp, dan saya tidak menginstal nomkl.
Jadi saya hanya melakukan dua langkah ini.

conda uninstall intel-openmp
conda install -c intel openmp

Bagi saya, kombinasi ini berhasil:

brew uninstall libiomp clamp-omp
conda uninstall intel-openmp -n base
conda install -c intel openmp -n myenv
conda install nomkl -n myenv

Konflik utama berasal dari brew libiomp tetapi kemudian konflik dengan conda base env dan python 3.7 env saya lebih dari openmp mengirim saya berputar-putar sampai saya menyelesaikan rantai ketergantungan/fallback. Perbedaan sumber saluran membuat perbedaan besar.

(macOS Catalina 10.15.5)

Melalui paket yang diinstal di env saya, saya perhatikan ada pembaruan untuk mkl.

Jadi saya bisa menyelesaikan kasus saya dengan memperbarui mkl.

conda install -c intel mkl

Anda dapat menjalankan komentar ini conda install nomkl

Saya memiliki kesalahan yang sama di Mac saya dengan program python menggunakan numpy, keras, dan matplotlib. Saya menyelesaikannya dengan 'conda install nomkl'.

Apa keajaiban di balik ini?

Saya memiliki kesalahan yang sama pada window10 saya.

os.environ['KMP_DUPLICATE_LIB_OK']='True', saya mencoba perintah ini dan masalahnya terpecahkan berkat @Toooodd

Saya menemukan solusi alternatif untuk masalah ini di sini , yaitu dengan memuat runtime OpenMP menggunakan variabel LD_PRELOAD :

LD_PRELOAD=<path_to_libiomp5.so> <path_to your_executable>

Ini menghilangkan banyak pemuatan libiomp, dan membuat semua komponen menggunakan versi OpenMP khusus ini.

impor os
os.environ['KMP_DUPLICATE_LIB_OK']='Benar'

Diikuti oleh

conda install nomkl

Bekerja untuk saya. Terima kasih!

Apakah halaman ini membantu?
0 / 5 - 0 peringkat