Tensorflow: import tensorflow 실행 후 잘못된 명령(코어 덤프됨)

에 만든 2018년 03월 04일  ·  100코멘트  ·  출처: tensorflow/tensorflow

시스템 정보

  • 사용자 지정 코드를 작성했습니까(TensorFlow에서 제공되는 스톡 예제 스크립트를 사용하는 것과 반대) : 아니요
  • OS 플랫폼 및 배포(예: Linux Ubuntu 16.04) : Linux Ubuntu 16.04
  • (소스 또는 바이너리)에서 설치된 TensorFlow : 바이너리
  • TensorFlow 버전(아래 명령어 사용) :
    1.6.0-cp27-cp27mu-manylinux1_x86_64 ( python -c "import tensorflow as tf; print(tf.GIT_VERSION, tf.VERSION)" 가 이미 오류를 제공하기 때문에 추측만 가능)
  • 파이썬 버전 : 파이썬 2.7.12
  • 재현할 정확한 명령 : import tensorflow

새로운 가상 환경을 만들었습니다: virtualenv -p python2 test_venv/
그리고 설치된 텐서플로: pip install --upgrade --no-cache-dir tensorflow
import tensorflow 가) Illegal instruction (core dumped)

무슨 일이 일어나고 있고 어떻게 고칠 수 있는지 이해하도록 도와주세요. 감사합니다.

CPU 정보:

          description: CPU
          product: Intel(R) Core(TM) i3 CPU       M 330  @ 2.13GHz
          bus info: cpu<strong i="31">@0</strong>
          version: CPU Version
          capabilities: x86-64 fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm tpr_shadow vnmi flexpriority ept vpid dtherm arat cpufreq

편집하다
gdb로 얻은 스택 추적:

#0  0x00007fffe5793880 in std::pair<std::__detail::_Node_iterator<std::pair<tensorflow::StringPiece const, std::function<bool (tensorflow::Variant*)> >, false, true>, bool> std::_Hashtable<tensorflow::StringPiece, std::pair<tensorflow::StringPiece const, std::function<bool (tensorflow::Variant*)> >, std::allocator<std::pair<tensorflow::StringPiece const, std::function<bool (tensorflow::Variant*)> > >, std::__detail::_Select1st, std::equal_to<tensorflow::StringPiece>, tensorflow::StringPieceHasher, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_emplace<std::pair<tensorflow::StringPiece, std::function<bool (tensorflow::Variant*)> > >(std::integral_constant<bool, true>, std::pair<tensorflow::StringPiece, std::function<bool (tensorflow::Variant*)> >&&) ()
   from /media/gerry/hdd_1/ws_hdd/test_venv/local/lib/python2.7/site-packages/tensorflow/python/../libtensorflow_framework.so
#1  0x00007fffe5795735 in tensorflow::UnaryVariantOpRegistry::RegisterDecodeFn(std::string const&, std::function<bool (tensorflow::Variant*)> const&) () from /media/gerry/hdd_1/ws_hdd/test_venv/local/lib/python2.7/site-packages/tensorflow/python/../libtensorflow_framework.so
#2  0x00007fffe5770a7c in tensorflow::variant_op_registry_fn_registration::UnaryVariantDecodeRegistration<tensorflow::Tensor>::UnaryVariantDecodeRegistration(std::string const&) ()
   from /media/gerry/hdd_1/ws_hdd/test_venv/local/lib/python2.7/site-packages/tensorflow/python/../libtensorflow_framework.so
#3  0x00007fffe56ea165 in _GLOBAL__sub_I_tensor.cc ()
   from /media/gerry/hdd_1/ws_hdd/test_venv/local/lib/python2.7/site-packages/tensorflow/python/../libtensorflow_framework.so
#4  0x00007ffff7de76ba in call_init (l=<optimized out>, argc=argc@entry=2, argv=argv@entry=0x7fffffffd5c8, env=env@entry=0xa7b4d0)
    at dl-init.c:72
#5  0x00007ffff7de77cb in call_init (env=0xa7b4d0, argv=0x7fffffffd5c8, argc=2, l=<optimized out>) at dl-init.c:30
#6  _dl_init (main_map=main_map@entry=0xa11920, argc=2, argv=0x7fffffffd5c8, env=0xa7b4d0) at dl-init.c:120
#7  0x00007ffff7dec8e2 in dl_open_worker (a=a@entry=0x7fffffffb5c0) at dl-open.c:575
#8  0x00007ffff7de7564 in _dl_catch_error (objname=objname@entry=0x7fffffffb5b0, errstring=errstring@entry=0x7fffffffb5b8, 
    mallocedp=mallocedp@entry=0x7fffffffb5af, operate=operate@entry=0x7ffff7dec4d0 <dl_open_worker>, args=args@entry=0x7fffffffb5c0)
    at dl-error.c:187
#9  0x00007ffff7debda9 in _dl_open (
    file=0x7fffea7cbc34 "/media/gerry/hdd_1/ws_hdd/test_venv/local/lib/python2.7/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so", mode=-2147483646, caller_dlopen=0x51ad19 <_PyImport_GetDynLoadFunc+233>, nsid=-2, argc=<optimized out>, argv=<optimized out>, env=0xa7b4d0)
    at dl-open.c:660
#10 0x00007ffff75ecf09 in dlopen_doit (a=a@entry=0x7fffffffb7f0) at dlopen.c:66
#11 0x00007ffff7de7564 in _dl_catch_error (objname=0x9b1870, errstring=0x9b1878, mallocedp=0x9b1868, operate=0x7ffff75eceb0 <dlopen_doit>, 
    args=0x7fffffffb7f0) at dl-error.c:187
#12 0x00007ffff75ed571 in _dlerror_run (operate=operate@entry=0x7ffff75eceb0 <dlopen_doit>, args=args@entry=0x7fffffffb7f0) at dlerror.c:163
#13 0x00007ffff75ecfa1 in __dlopen (file=<optimized out>, mode=<optimized out>) at dlopen.c:87
#14 0x000000000051ad19 in _PyImport_GetDynLoadFunc ()
#15 0x000000000051a8e4 in _PyImport_LoadDynamicModule ()
#16 0x00000000005b7b1b in ?? ()
#17 0x00000000004bc3fa in PyEval_EvalFrameEx ()
#18 0x00000000004c136f in PyEval_EvalFrameEx ()
#19 0x00000000004b9ab6 in PyEval_EvalCodeEx ()
#20 0x00000000004b97a6 in PyEval_EvalCode ()
#21 0x00000000004b96df in PyImport_ExecCodeModuleEx ()
#22 0x00000000004b2b06 in ?? ()
#23 0x00000000004a4ae1 in ?? ()

편집 2
바젤 버전: N/A
CUDA/cuDNN 버전: N/A
GPU 모델 및 메모리: N/A

이전 버전의 tensorflow로 다운그레이드하면 오류가 사라집니다. 내 CPU(위 정보 참조)가 새 API의 일부 개선 사항과 함께 작동하지 않을 수 있다는 조언을 받았습니다. 이 경우 내 문제에 대한 해결책이 없다고 생각합니다. 따라서 이 스레드를 닫습니다. 그래도 자유롭게 수정해주세요. 지원해 주셔서 감사합니다.

awaiting response

가장 유용한 댓글

달려봐
핍 제거 텐서플로
그리고
pip 설치 tensorflow==1.5

편집하다
신용을 제공하기 위해 솔루션은 다음과 같습니다.
https://stackoverflow.com/questions/49094597/illegal-instruction-core-dumped-after-running-import-tensorflow

모든 100 댓글

귀하의 게시물에 감사드립니다. 문제 템플릿에서 다음 필드를 작성하지 않은 것으로 나타났습니다. 귀하의 사례와 관련이 있는 경우 업데이트하거나 N/A로 남겨둘 수 있습니까? 감사 해요.
바젤 버전
CUDA/cuDNN 버전
GPU 모델 및 메모리

실행할 때 동일한(또는 유사한) "불법 지시" 문제가 있습니다.

import tensorflow as tf

64비트 Ubuntu Linux에서 CPU 1.6 버전만 사용하고 있습니다.

CPU 1.5 버전으로 다운그레이드한 후에는 이 문제가 발생하지 않습니다.

CPU 1.5 버전으로 다운그레이드하려면 어떻게 해야 합니까?

달려봐
핍 제거 텐서플로
그리고
pip 설치 tensorflow==1.5

편집하다
신용을 제공하기 위해 솔루션은 다음과 같습니다.
https://stackoverflow.com/questions/49094597/illegal-instruction-core-dumped-after-running-import-tensorflow

감사합니다 konnerthg, 심지어 같은 문제가 발생했습니다. 귀하의 명령은 이 문제를 정렬하는 데 도움이 되었습니다. 다시 한번 감사합니다.

여기도 마찬가지입니다.
최신 휠을 사용하면 Ubuntu 16.04에서 잘못된 명령 문제가 발생했지만 tensorflow-gpu==1.5로 다운그레이드했는데 작동합니다!

1.5로 다운 그레이드도 저에게 효과적이었습니다.

@konnerthg 1.5로 다운그레이드하는 것은 해결 방법일 뿐이며 이 문제는 아직 해결되지 않았습니다.
이 문제를 해결한 커밋/PR은 무엇입니까?

python 3.6에서도 이 오류가 발생합니다.

이봐 !
당신의 솔루션을 주셔서 감사합니다! 정말로. 나는 일주일 동안이 문제가 있었고 나는 미치기 시작했습니다! 고마워 !

솔루션에 감사드립니다. 내 Ubuntu 16.04, 64비트, python3.5에서 작동했습니다.

솔루션 감사합니다! 버전 1.5로 다운그레이드하면 문제가 해결되었습니다. Python 2.7이 설치된 Ubuntu 16.04 서버에서 테스트됨

Tensorflow 1.6에서 1.5로 다운그레이드하면 동일한 문제가 해결되었습니다. Xubuntu 16.04 64비트 실행, Python 3.5.

이 모든 것에 감사드립니다. Python 3.6에서 내 문제를 해결했습니다.

_ (tensorflow) naniny@Aspire-E5-573 :~$ pip unistall tensorflow

_(tensorflow) naniny@Aspire-E5-573 :~$ pip install tensorflow==1.5

_(tensorflow) naniny@Aspire-E5-573 :~$ 파이썬

_ (tensorflow) naniny@Aspire-E5-573 :~$ 텐서플로를 tf로 가져오기

이제 문제없이 작동합니다 ...

이것은 정말 이상합니다. 문제의 원인을 아는 사람이 있습니까? TensorFlow 1.6에 이렇게 큰 버그가 있다는 사실에 놀랐습니다.

Python 3.6.4를 사용하는 Linux의 tensorflow-gpu 1.6.0에서도 이 문제가 발생합니다. pip 자체를 사용하여 tensorflow를 설치했습니다. 이것을 실행하기만 하면 SIGILL이 생성됩니다.

$ python3 -m tensorflow
zsh: illegal hardware instruction  python3 -m tensorflow

이 티켓의 설명에 언급된 것과 유사한 스택 추적이 나타납니다.

이것은 pip에 업로드된 최신 Tensorflow 패키지에서 AVX 명령어를 사용하기 때문에 발생하는 것 같습니다. GDB를 통해 python3을 실행하고 충돌 함수를 분해하는 것은 다음 명령을 가리킵니다.

=> 0x00007fffb9689660 <+80>:    vmovdqu 0x10(%r13),%xmm1

이것은 AVX를 지원하지 않는 구형 또는 덜 기능적인 CPU에서 지원되지 않는 AVX 명령입니다. tensorflow(-gpu) 1.5.0 pip 패키지는 AVX 명령어를 사용하지 않으므로 이러한 CPU에서 사용하는 데 문제가 없습니다.

솔루션은 게시할 AVX 명령어로 컴파일되지 않은 tensorflow(-gpu) 빌드를 위한 것입니다(또는 로컬에서 사본을 빌드하기 위한 것). 제공된 설치 지침 에는 특정 CPU 요구 사항이나 제공된 바이너리와의 호환성을 확인하는 방법이 언급되어 있지 않습니다.

그 동안 위에서 언급한 @NinemillaKA 와 같은 것을 사용하여 tensorflow(-gpu) 1.5.0으로 되돌리는 것이 효과적인 해결 방법입니다.

나는 같은 문제가 있으며 많은 사람들이 언급했듯이 1.6.0 에서 1.5.0 다운 그레이드하십시오.

기록을 위해 2개의 다른 컴퓨터에서 tensorflow(CPU 전용 버전)를 실행해 보았습니다.

컴퓨터 1:

OS = Ubuntu 16.04 x64 LTS
Python = Python 3.6
pip version = 9.0.1
tensorflow version = TensorFlow 1.6.0
CPU = Intel Core 2 Quad Q6600  @2.40GHz

컴퓨터 2:

OS = Ubuntu 16.04 x64 LTS
Python = Python 3.6
pip version = 9.0.1
tensorflow version = TensorFlow 1.6.0
CPU = Intel Celeron N2820 @2.413GHz

나는 명령 세트에 대한 요구 사항을 보다 명확하게 해야 한다는 @nacl의 의견에 동의합니다. 가능하면 AVX 명령을 지원하지 않는 프로세서에 대한 별도의 업데이트된 빌드를 제공해야 합니다. 솔직히 말해서, 나는 어떤 기술의 구식 버전으로 작업해야 하는 약간의 낙담을 발견합니다. 많은 사람들이 같은 느낌을 가질 것이라고 생각합니다.

각 아키텍처 유형에 대해 다른 빌드를 사용하는 것의 대안은 동적 디스패치를 ​​사용하는 것입니다. IE, PyTorch는 모든 아키텍처에 대해 하나의 바이너리를 가지며 런타임 @caisq 동안 가장 효율적인 작업을 선택합니다.

감사 해요

나는 또한 같은 문제가 발생합니다. 나는 두 대의 기계에서 그것을 시도했고 그 중 하나에서 작동합니다.

먼저 MacBook Pro에 설치했습니다. 그리고 나는 아무 문제가 없었습니다.

MacBook Pro (Retina, Mid 2012)
CPU = 2.3 GHz Intel Core i7
OS = MacOS 10.13.3
Python = Python 3.6.4
pip version = 9.0.3
TensorFlow version = 1.6.0

그래서 MacPro를 업그레이드했습니다. 하지만 이번에는 tensorflow를 가져오려고 하면 Illegal instruction: 4 발생합니다.

Mac Pro (Mid 2010)
CPU = 2 x 2.4 GHz Quad-Core Intel Xeon
OS = MacOS 10.13.3
Python = Python 3.6.4
pip version = 9.0.3
TensorFlow version = 1.6.0

(2018년 3월 30일 업데이트)
TensorFlow 1.7과 동일한 문제입니다. 그래서 TensorFlow 1.5를 사용하는 것 같습니다.

이것은 여전히 ​​1.6의 문제이며 잠재적으로 1.7의 문제입니다. 폐쇄된 이유는 무엇입니까? @yaroslavvb 의 솔루션은 합리적으로 보입니다. 지금은 1.5로 다운그레이드 했습니다.

확실하지 않지만 이 링크에서 ver1.6.0부터 인텔 CPU 명령 최적화 프로그램이 텐서플로에 도입되었습니다. 아마도 이것이 원인이라고 생각합니다.
https://software.intel.com/en-us/articles/intel-optimized-tensorflow-wheel-now-available

@captainst 이는 Intel 전용 릴리스이며 pip install 를 수행하여 얻을 수 있는 공식 릴리스와 다릅니다. 1.6 업그레이드 후 SIGILL 문제는 AVX 추가로 인해 발생할 수 있습니다.

같은 문제가 있습니다.
우분투 18.04 x64
파이썬 3.6.5rc1
텐서플로우 1.7.0

나는 같은 문제가 있었다. 1.5로 다운 그레이드하면 저에게 효과적이었습니다.

여기도 마찬가지입니다.

나도. 아치 리눅스와 인텔 CPU.

Ubuntu 17에서도 동일합니다. 10.1 VM, Slackware의 KVM 하이퍼바이저, Intel KabyLake CPU

나는 그것을 알아 냈다고 생각합니다. AVX 지원이 부족한 G4600 CPU가 있으며 이것은 1.6에 추가되었습니다.

예, 저도 AVX 지원을 잠급니다.

v1.6 이상에서 이 문제를 수정하려면 소스에서 tensorflow를 컴파일해야 합니다.

최신 tensorflow-gpu(1.7)를 사용하고 1.5를 고수하고 싶지 않습니다. 그렇다면 AVX 지원이 활성화되지 않은 소스에서 tensorflow를 빌드하는 솔루션이 있습니까? 나는 오래된 Xeon E5420을 가지고 있지만 tensorflow-gpu를 사용하고 있습니다

dmoham1476 [email protected]于2018年4月7日 周六上午2:28写道:

최신 tensorflow-gpu(1.7)를 사용하고 싶지만
1.5. AVX 지원 없이 소스에서 tensorflow를 빌드하는 솔루션도 마찬가지입니다.
활성화? 나는 오래된 Xeon E5420을 가지고 있지만 tensorflow-gpu를 사용하고 있습니다


당신이 댓글을 달았기 때문에 이것을 받는 것입니다.
이 이메일에 직접 답장하고 GitHub에서 확인하세요.
https://github.com/tensorflow/tensorflow/issues/17411#issuecomment-379337106 ,
또는 스레드 음소거
https://github.com/notifications/unsubscribe-auth/AGEJnptN5yMdVaVdWTsIwcjOAJuJbUDQks5tl7PKgaJpZM4SbSGu
.

git clone 마스터의 소스에서 빌드할 수 있습니다. 자동으로 조정되어야 합니다

당신의 CPU에.

문안 인사,

버전 1.5로 다운그레이드하면 문제가 해결되었습니다. Python 2.7과 함께 Ubuntu 16.04를 사용하고 있습니다.

같은 문제
우분투=16.10
파이썬=3.6
핍=9.0.3
tensorflow-gpu = 1.7 사용
엔비디아 GTX 1070
쿠다 9.0

해결 방법:
pip3 설치 tensorflow-gpu==1.5

같은 문제

같은 문제
우분투 16.04
tensorflow-gpu 1.7 및 1.6 사용

Paperspace 노트북에서 실행되는 이 Docker 이미지에서도 동일한 문제가 발생합니다.

문제는 버전 1.6 및 1.7에 있습니다.

동일한 문제가 발생하여 1.5로 다운그레이드되었습니다. 이제 Tensorflow를 가져오지만 tensorflow_hub가 필요한 스크립트를 실행하고 있습니다. 스크립트에서 RuntimeError가 발생합니다: TensorFlow Hub는 20180308 또는 'tensorflow~=1.7' 이후의 'tf-nightly' 빌드에 의존합니다. tf.VERSION = 1.5.0을 찾았습니다.

버전 1.5로 돌아가서 감사합니다.

CentOS 7의 tf`1.8, CPU에만 동일한 문제가 있었습니다. 1.5로 다운 그레이드가 작동했습니다.

소스에서 빌드하는 경우 다운그레이드를 원하지 않는 경우 문제가 해결됩니다.

같은 문제가 있어서 1.5로 다운그레이드하는 것이 효과적이었습니다.

tensorflow-gpu 1.8.0의 paperspace fast.ai 템플릿 머신에서도 이 문제가 발생했습니다.

tensorflow-1.8.0과 동일한 문제가 있습니다. 문제는 retrain.py로 훈련하고 싶기 때문에 버전 1.5로 다운그레이드할 수 없다는 것입니다. 이 tensorflow 버전의 경우 1.7보다 큰 버전이 필요합니다. 제안 사항이 있습니까? 소스에서 tensorflow를 빌드하면 도움이 될까요?!

동일한 문제:
fast.ai 템플릿이 있는 paperspace VM
GPU: 엔비디아 쿼드로 P4000
https://www.tensorflow.org/install/install_linux#installing_with_virtualenv 와 같이 virtualenv에 설치된 tensorflow 1.8.0에서 위의 오류가 발생했습니다(페이지 하단에 언급된 권장 휠을 설치할 때 포함).
우분투 16.04, 파이썬 3.6.3
pip uninstall tensorflow && pip install tensorflow-gpu==1.5.0 이 문제를 해결했습니다. 아직 소스에서 컴파일을 시도하지 않았습니다.

참고로 grep avx /proc/cpuinfo 는 아무 것도 반환하지 않으므로 내 VM의 CPU는 avx 명령을 지원하지 않습니다.

안녕하세요 여러분, 소스에서 빌드하면 문제가 해결되었습니다.

در تاریخ یکشنبه ۱۳ مهٔ ۲۰۱۸، ۱:۴۷ laurent notifications @com نوشت:

동일한 문제:
fast.ai 템플릿이 있는 paperspace VM
GPU: 엔비디아 쿼드로 P4000
tensorflow 1.8.0은 다음과 같이 virtualenv에 설치되었습니다.
https://www.tensorflow.org/install/install_linux#installing_with_virtualenv
위의 오류를 주었다
우분투 16.04, 파이썬 3.6.3
pip uninstall tensorflow && pip install tensorflow-gpu==1.5.0 수정
문제. 아직 소스에서 컴파일을 시도하지 않았습니다.


당신이 댓글을 달았기 때문에 이것을 받는 것입니다.
이 이메일에 직접 답장하고 GitHub에서 확인하세요.
https://github.com/tensorflow/tensorflow/issues/17411#issuecomment-388583280 ,
또는 스레드 음소거
https://github.com/notifications/unsubscribe-auth/APaJX3BUFgxCemEueanuAXMfqboX5MNqks5tx1FugaJpZM4SbSGu
.

동일한 문제를 단계적으로 수행하지만 tensorflow-1.5로 전환한 후에는 효과가 있었습니다.
내 문제:- 오류 -> 코어 덤프
프로세서: AMD® A4-3330mx apu, radeon(tm) hd 그래픽 × 2
그래픽: AMD® 스모
그놈: 3.28.1
OS 유형: 64비트, Ubuntu 18.04 LTS

크레딧:-https ://github.com/konnerthg

물론 이전 버전의 tensorflow에서 작동하지만 새로운 tensorflowjs와 호환되는 1.7.0 버전이 더 필요합니다. 어떻게?

@mctrjalloh 새 CPU 구입, 추측

나는 그것을 해결했다. 새 CPU를 구입하는 것이 아닙니다😏

소스에서 빌드해야 하므로 그렇게 복잡하지 않습니다.

tensorflow-gpu 1.8.0에서도 동일한 문제

운영 체제: 우분투 18.04
파이썬: 3.6.5

나를 위해 동일:

운영 체제: 우분투 16.04
파이썬: 3.5
NVIDIA 드라이버 버전: 384.130

편집: 소스에서 빌드 작동

정말 고맙습니다!!!

CUDA9.0+cuDNN7.1+Tensorflow-gpu1.5가 작동 중입니다.

같은 문제입니다. Ubuntu 16 및 Ubuntu 17에서 각각 >8GB RAM 및 >4ghz CPU를 사용하는 3개의 다른 컴퓨터에서 테스트했습니다. 또한 GPU 시스템에 문제가 있습니다.

내 Ubuntu Server 16.04에서도 동일한 문제가 발생합니다. 소스에서 TensorFlow(r1.8)를 컴파일하고 로컬에서 pip 설치로 해결:+1:

문제는 도커 이미지에서도 발생합니다. 소스에서 컴파일하고 싶지 않습니다. 주위에 방법이 있습니까? 저도 다운그레이드 하고 싶지 않습니다.

제 경우에는 TensorFlow(Ubuntu 18.04에서)를 Bazel로 컴파일하면 문제가 해결되었습니다. 그러나 컴파일에는 시간이 걸렸습니다.

제 경우에도 TensorFlow 1.9를 다시 컴파일하면 문제가 해결되었습니다. 그러나 numpy 1.15와 관련된 또 다른 문제가 발생했습니다. numpy 1.14.5로 다운 그레이드하면 컴파일이 작동하고 pip 패키지를 설치할 수 있습니다.

이 문제가 종료된 이유는 무엇입니까? TensorFlow 1.10에서 여전히 발생하고 있습니다.

소스에서 빌드하지 않아도 되는 몇 가지 tensorflow 커뮤니티 빌드에 대한 링크를 여기에 게시했습니다.

실제로 저는 https://www.tensorflow.org/install/install_linux에 있는 지침을 따랐고 해당 설치 페이지에서 요청한 대로 테스트할 때 "불법 명령(코어 덤프)" 이상을 얻지 못했습니다.

이 문제는 종결되어서는 안 되며 실제 해결책이 있어야 합니다(예: 버전 1.5를 설치하지 않음).

우분투 18.04에서 작동했습니다. 따라서 설치 페이지에서 버전을 언급하는 것은 작동하는 것과 작동하지 않는 것에 대한 해결책으로 좋은 아이디어일 수 있습니다.

글쎄이 문제는 여전히 진행 중인 것 같습니다. 하지만 아주 간단한 해결책이 있습니다.
그것은 당신이 동시에 트렌드를 따르게 할 것입니다 :-).

콘다 설치!!!
conda를 설치하려면 구글링하세요 :-)

원하는 경우 conda 환경을 만드십시오.

콘다 생성

다음을 실행하기만 하면 됩니다.

콘다 설치 텐서플로

마지막 명령이 작동하지 않으면 다음을 통해 다른 채널을 검색하십시오.
달리기:

아나콘다 검색 텐서플로

다운로드할 수 있는 채널 목록이 출력됩니다.
하나의 채널을 선택하고 다음을 실행하십시오.

콘다 쇼

다운로드에 입력해야 하는 명령을 묻는 메시지가 표시됩니다.
텐서플로.
해당 명령을 실행합니다.

그게 다야!

콘다로 이동!!!

2018년 8월 23일 목요일 오후 10:38 Alexis Wilke [email protected]
썼다:

실제로, 나는 다음에서 찾은 지침을 따랐습니다.
https://www.tensorflow.org/install/install_linux 하고 더 이상 얻을 수 없습니다.
요청한 대로 테스트할 때 "불법 명령(코어 덤프)"보다
그 설치 페이지.

이 문제는 종료되지 않았거나 다음과 같은 실제 솔루션이 있어야 합니다.
의미가 있음(즉, 버전 1.5를 설치하지 않음)


당신이 언급되었기 때문에 이것을 받는 것입니다.
이 이메일에 직접 답장하고 GitHub에서 확인하세요.
https://github.com/tensorflow/tensorflow/issues/17411#issuecomment-415592389 ,
또는 스레드 음소거
https://github.com/notifications/unsubscribe-auth/AWESkUXD-4XomnnPgF6D5QToWVH74JzAks5uTy7PgaJpZM4SbSGu
.

루트 문제는 protobuf 및 pthread_once 및 std::call_once 주변의 비호환성과 관련이 있을 수 있습니다. 문장 조각이라는 다른 Google 패키지 바로 다음에 tensorflow를 가져올 때 segfault에 직접 부딪쳤고 문장 조각 제작자는 std::call_once 구현을 다른 구현으로 대체하는 protobuf용 패치를 만들어 수정했습니다.

https://github.com/google/sentencepiece/issues/186

이 문제를 보다 건설적으로 만들기 위해 TensorFlow가 먼저 CPU에 필요한 명령을 확인하고 누락된 경우 오류를 인쇄하는 것이 유용할 것이라고 생각합니다. 유사하게 현재 일부 지침을 사용할 수 있지만 컴파일되지 않는다고 말하는 방법. 그러면 버그를 구별하고 주어진 CPU에 대해 올바른 바이너리를 사용하지 않는 것이 더 쉬울 것입니다.

Mr royyannick ..사실 저는 Google을 여러 번 검색해 왔으며 Keras와 Tensoflow를 모두 공부하는 데 영향을 주었지만 오늘 당신은 제 하루를 보냈습니다. 당신은 훌륭합니다.
감사 해요

동일한 오류로 Ubuntu 16.04의 tensorflow 1.10.1(최신 버전)에서 가상 환경과 (f...ing) conda(당신, 친구 업스트림, go fys!)를 모두 시도했습니다. 이전 버전 1.9로 전환했습니다. 모든 것이 잘 작동합니다.

이전 CPU를 실행하는 컴퓨터에서 이 문제를 재현했습니다. 다음은 문제를 해결하기 위한 가능한 옵션을 설명하는 문서입니다 .

AVX를 지원하지 않는 구형 CPU용 최신 TensorFlow를 설치하고 싶지만 소스에서 빌드할 시간이 없는 사람들은 이 Github 저장소 에서 WHL 파일을 다운로드할 수도 있습니다.

BS입니다. 내 설치를 1.9(이 기사에서 말하는 '1.6 이전'이 아님)로 롤백했고 바이너리가 작동했습니다(어제).

명령줄에서 이것을 실행하는 경우:

1)

$ lsb_release -a| grep "Release" | awk '{print $2}'

2)

$ grep flags -m1 /proc/cpuinfo | cut -d ":" -f 2 | tr '[:upper:]' '[:lower:]' | { read FLAGS; OPT="-march=native"; for flag in $FLAGS; do case "$flag" in "sse4_1" | "sse4_2" | "ssse3" | "fma" | "cx16" | "popcnt" | "avx" | "avx2") OPT+=" -m$flag";; esac; done; MODOPT=${OPT//_/\.}; echo "$MODOPT"; }

출력에서 1)의 경우 16.04-mavx )의 경우 -mavx2 를 참조하십시오. AVX 지원과 관련이 없는 또 다른 문제일 수 있습니다.

그 플래그가 없으면 메모에 추가해야 합니다. 감사합니다.

여기서도 같은 오류,

CentOS 7, Python 3.6.5, Intel CPU core2 duo e8500. 핍 설치.

버전 1.9는 작동하지 않습니다. 버전 1.5는 확인을 가져옵니다.

버전 1.10은 Ubuntu 18.04 및 Intel i5-6200U가 있는 랩톱에서 괜찮은 것 같습니다.

이것은 https://www.tensorflow.org/install/install_sources에 명시되어
참고: 1.6 릴리스부터 사전 빌드된 바이너리는 AVX 명령어를 사용합니다.

훨씬 더 눈에 띄는 위치에서 언급되었을 것 같아요!

이것은 내 문제를 해결했습니다.
NVIDIA 드라이버, CUDA Toolkit 및 CUDNN을 설치한 후.
먼저 tensorflow-gpu 제거:

$ pip uninstall tensorflow-gpu

그런 다음 Anaconda를 사용하여 tensorflow-gpu를 설치합니다.

$ conda create -n tensorflow
$ conda install tensorflow-gpu -n tensorflow

달려봐
핍 제거 텐서플로
그리고
pip 설치 tensorflow==1.5

편집하다
신용을 제공하기 위해 솔루션은 다음과 같습니다.
https://stackoverflow.com/questions/49094597/illegal-instruction-core-dumped-after-running-import-tensorflow

감사합니다 작동합니다

AVX 명령어와 관련이 있을 수 있습니다. pip 사전 빌드된 tensorflow-1.6 이상 버전은 AVX 명령으로 빌드되며 일부 CPU에는 AVX 명령이 없습니다. pip 미리 빌드된 tensorflow-1.5는 AVX 명령어로 빌드되지 않습니다.
제안: 1): 더 낮은 버전의 tensorflow 사용
2): 소스에서 상위 버전의 tensorflow 컴파일

예. 물론. 그러나 소프트웨어가 단순히 충돌하는 것보다 나에게 알려준다면 더 좋을 것입니다. 요구 사항에 문제가 없습니다. 처리되는 방식입니다... Linux에서는 avx flags 행에 대해 /proc/cpuinfo 를 확인하는 것이 매우 쉽습니다. avx 가 나타나야 합니다. 그렇지 않으면 오류를 생성하고 exit(1) .

AVX가 없는 이전 컴퓨터의 플래그는 다음과 같습니다.

플래그 : FPU VME 드 PSE TSC MSR PAE MCE CX8 APIC 9월 MTRR PGE MCA는 가볍게 CMOV PSE36 CLFLUSH DTS ACPI MMX fxsr SSE SSE2 SS HT TM PBE 콜 NX rdtscp LM CONSTANT_TSC arch_perfmon pebs BTS rep_good nopl xtopology NONSTOP_TSC aperfmperf PNI dtes64 모니터링 ds_cpl VMX SMX 추정 tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm ssbd ibrs ibpb stibp 카이저 tpr_shadow vnmi flexpriority ept vpid dtherm ida flush_l1d

시스템 정보

-
Lenovo-G500 8GB RAM 설명: CPU
제품: Intel(R) Core(TM) i3 CPU M 330 @ 2.13GHz
버스 정보: cpu@0
버전: CPU 버전
운영 체제; 우분투-16.05
핍 : 18 버전 최신
나는 GPU가 없다

나는 또한 불법 명령 코어 덤프를 받고 있습니다. tensorforflow 1.5가 저를 위해 일하고 있습니다.
하지만
내 프로젝트에 tensorflowv1.10 0r 최신 버전을 설치해야 합니다.

나는 다른 방법으로 tensorflow에 설치하려고 시도했습니다.

  1. anacoda 없이, python 2.7, pip ...pip install --upgrade tensorflow 사용
    2 anacoda 없이, python 3.5, pip "" 사용
    3.anacoda 없이, python 3.6, pip "" 사용
    4. 아나코다 사용, 파이썬 2.7, conda conda install -c conda-forge tensorflow 사용
    5.anacoda 없이, python 2.7, pip "" 사용
    6.anacoda 없이, python 2.7, pip "" 사용

어느 쪽도 나를 위해 일하지 않았습니다.
이슈가 뭐야.

@반다리칸트

tensorflow를 설치하는 방식은 중요하지 않습니다. 문제는 tensorflow 1.6+ 사전 빌드 바이너리에 AVX 명령어 세트 확장이 필요하고 프로세서가 AVX를 지원하지 않는다는 것입니다. 소스에서 빌드하거나 새로운 프로세서가 있는 컴퓨터로 이동하거나 1.5를 고수할 수 있습니다.

감사 해요

2018년 12월 30일 일요일 오전 12시 24분 Dan Stine < [email protected] 작성:

@bandarikanth https://github.com/bandarikanth

tensorflow를 설치하는 방식은 중요하지 않습니다. 문제
tensorflow 1.6+ 사전 빌드 바이너리에는 AVX가 필요합니다.
https://en.m.wikipedia.org/wiki/Advanced_Vector_Extensions 지침
확장자를 설정하고 프로세서가 AVX를 지원하지 않습니다. 다음 중 하나를 수행할 수 있습니다.
소스에서 빌드하거나 새로운 프로세서가 있는 컴퓨터로 이동하거나
1.5로.


당신이 언급되었기 때문에 이것을 받는 것입니다.
이 이메일에 직접 답장하고 GitHub에서 확인하세요.
https://github.com/tensorflow/tensorflow/issues/17411#issuecomment-450512554 ,
또는 스레드 음소거
https://github.com/notifications/unsubscribe-auth/AZf77RdABm0uQsxiPx0uxd45q_rz9pUVks5u97pPgaJpZM4SbSGu
.

1.5로 다운그레이드하면 저에게 효과적입니다(pip install tensorflow==1.5).

tensorflow-gpu 2.0에 이 문제가 있습니다.

▶ uname -r; pacman -Q linux
5.0.10-arch1-1-ARCH
linux 5.0.10.arch1-1

▶ conda env export
name: Science
channels:
  - defaults
dependencies:
  - cudatoolkit=10.0.130=0
  - cudnn=7.3.1=cuda10.0_0
prefix: /home/archangel/anaconda3/envs/Science
▶ pip freeze | ack "tensor"
tensorflow-gpu==2.0.0a0
▶ ipython                                                          
Python 3.7.3 (default, Mar 27 2019, 22:11:17)                      
Type 'copyright', 'credits' or 'license' for more information      
IPython 7.4.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import tensorflow as tf                                    
[1]    25429 illegal hardware instruction (core dumped)  ipython   



md5-b2492dc6f0518a4ba524a15157565fb3



[18556.882892] traps: ipython[25429] trap invalid opcode ip:7fc41cde1a22 sp:7ffe68904500 error:0 in libtensorflow_framework.so[7fc41c877000+104c000]
[18556.885033] audit: type=1701 audit(1556951396.587:43): auid=4294967295 uid=1000 gid=1000 ses=4294967295 pid=25429 comm="ipython" exe="/home/archangel/anaconda3/bin/python3.7" sig=4 res=1
[18556.894046] audit: type=1130 audit(1556951396.594:44): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-coredump@4-25462-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=?
 res=success'
[18557.506049] audit: type=1131 audit(1556951397.204:45): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-coredump@4-25462-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=?
 res=success'


AVX를 지원 하는 i7-3520M에서 이 충돌이 발생합니다.

편집: 신경 쓰지 마세요. 충돌은 AVX2의 일부인 shlx 명령에서 발생합니다. 적어도 바닐라 AVX 지원이 충분하지 않다는 것을 보여줍니다.

여전히 tensorflow 1.14.0 및 2.0.0b1에 문제가 있습니다.

2.0.0b1의 Linux Mint 19에서 동일한 오류가 발생했습니다.
공식 사이트의 설치 페이지에서 지시한 대로 pip3로 설치했습니다.

tf1.5는 Debian 8.8 저장소에서 사용할 수 없습니다.

avx를 시도할 시간입니다.

이것은 관리되는 클러스터 노드에서 찾기가 엄청나게 어려웠습니다. OS가 이 "잘못된 명령" 행을 출력 로그 파일에 쓰고 플러시하기도 전에 관련 파이썬 프로세스를 종료하고 파이썬 프로세스의 종료 코드가 0인 것처럼 보이기 때문입니다. .

나는 또한 2.0.0-beta1을 사용하고 있었는데, 현재 그것을 2.0.0으로 교체하면 이 문제가 해결되는지 알아내고 있습니다.

나는 또한이 문제가있다. python2 있습니다. CPU 1.5 버전으로 다운그레이드하는 것이 도움이 되었습니다.

Ubuntu 18.04의 가상 환경에서 실행되는 Tensorflow 2에 이 문제가 있습니다. Tensorflow 개발자가 이 쓰레기 같은 상황에서 TF 2를 준비되고 사용 가능한 상태로 만들겠다는 생각이 듭니다. TF 개발자 여러분.

dmesg 출력(bash에서):
[333908.854310] 트랩: python[12862] 트랩 유효하지 않은 opcode ip:7f8c46e6d820 sp:7ffc87609f78 error:0 in _pywrap_tensorflow_internal.so[7f8c3e250000+a9f8
리눅스민트 19
인텔(R) 펜티엄(R) CPU P6200 @ 2.13GHz
8Gb 램(킹스톤)

이것은 큰 CPU 관련 문제입니다.

이 스레드를 읽고 동일한 경험을 한 후 내 문제는 내 Linux 컴퓨터가 더 오래되었고 AVX 명령 세트를 지원하지 않는 CPU가 있다는 것입니다. 다른 가상 환경에 tensorflow 1.5가 있지만 tensorflow 2를 사용하려면 Google Colab에서 스크립트를 실행해야 합니다.

AVX의 요구 사항이 의미가 있는지 여부를 말할 지식이 없습니다. 내가 아는 것은 문제가 구형 CPU뿐만 아니라 Intel N5000과 같은 상당히 최근 CPU에서도 나타난다는 것입니다. N5000에서 딥 러닝을 수행하는 것은 다소 무리가 있지만 RaspberryPi에서도 tensorflow를 지원하는 경우 문제가 발생하지 않습니다.

어쨌든 소스에서 컴파일하여 Intel N5000에 최신 버전의 TensorFlow(2.0)를 설치했습니다. 많은 RAM이 필요하고 파티에 초대된 4Gb만 있기 때문에 단일 코어에서 컴파일을 실행해야 했기 때문에 14시간이 걸렸습니다.

여기 에서 이 가이드

즐거운 시간 보내세요. 번거로움에 감사드립니다. 비 AVX용으로 이미 컴파일된 바이너리를 pip를 통해 제공하는 것은 지속적 통합 워크플로에 추가하기에는 분명히 너무 많았습니다.

답변 감사합니다, 루카. 정말 오래된 Ubuntu 18.04 데스크탑이 있습니다.
TF2를 실행하는 것을 제외하고는 정말 잘 작동합니다.
최신 PyTorch(1.3.0)라고 생각합니다.
Torch 1.1.0은 저에게 잘 작동하며 TF2와 관련하여 Google Colab을 사용합니다.
잘 작동합니다. 은퇴한 데이터 분석가이며 취미 프로필을 유지하고 있습니다.

귀하의 게시물에 감사드립니다

2019년 12월 7일 토요일 오후 6:52 Luca Olivieri [email protected]
썼다:

AVX의 요구 사항이 타당한지 여부를 말할 지식이 없습니다.
아니다. 내가 아는 것은 문제가 노인들에게만 나타나는 것이 아니라는 것입니다.
CPU뿐만 아니라 Intel N5000과 같은 상당히 최근의 CPU도 있습니다. 나는 그것을 얻는다
N5000에서 딥 러닝을 수행하는 것은 약간의 스트레칭이지만 텐서플로가
RaspberryPi에서도 지원되지만 문제가 표시되지 않습니다.

어쨌든 내 Intel N5000에 TensorFlow(2.0)의 마지막 버전을 설치했습니다.
소스에서 컴파일하여. 달려야 해서 14시간이 걸렸다.
많은 RAM이 필요하고 단일 코어에서 컴파일하기만 하면 됩니다.
4Gb가 파티에 초대되었습니다.

이 가이드에서 영감을 얻었습니다.
https://tech.amikelive.com/node-882/how-to-build-and-install-the-latest-tensorflow-without-cuda-gpu-and-with-optimized-cpu-performance-on-ubuntu/
그러나 경험은 순조롭지 않았고 지속적으로 의존성이 있었습니다.
컴파일을 설치하고 다시 시작해야 한다는 사실이 누락되었습니다. 그리고 일부
컴파일이 중단되었을 때 해결한 다른 것들도 있습니다.

즐거운 시간 보내세요. 번거로움에 감사드립니다. pip 이미 바이너리를 통해 제공
non-AVX용으로 컴파일된 것은 분명히 계속해서 추가하기에는 너무 많았습니다.
통합 워크플로


당신이 댓글을 달았기 때문에 이것을 받는 것입니다.
이 이메일에 직접 답장하고 GitHub에서 확인하세요.
https://github.com/tensorflow/tensorflow/issues/17411?email_source=notifications&email_token=ACYHH362LGI5EZY3G74CMVLQXQZKDA5CNFSM4ETNEGXKYY3PNVWWK3TUL52HS4DFVEXG43VMXVBW
또는 구독 취소
https://github.com/notifications/unsubscribe-auth/ACYHH3YLNAER6NGNLKYNMPDQXQZKDANCNFSM4ETNEGXA
.

--
Clive DaSilva CPA, CMA
집: 416-421-2480|모바일: 416-560-8820
이메일: clive. [email protected]
링크드인: http://ca.linkedin.com/pub/clive-dasilva/3/197/b89

Gitlab 서버에서 CI 파이프라인을 실행할 때도 동일한 문제가 발생했습니다. 러너의 (에뮬레이트된) CPU는 AVX 명령을 제공하지 않았습니다.

PyPI의 휠을 사용하는 대신 Conda와 함께 Tensorflow를 설치하면 문제가 해결되었습니다. :+1:

Tensorflow 2.1.0과 동일한 문제가 있습니다. 무엇을 할까요?

Architecture:        x86_64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Little Endian
CPU(s):              48
On-line CPU(s) list: 0-47
Thread(s) per core:  1
Core(s) per socket:  12
Socket(s):           4
NUMA node(s):        8
Vendor ID:           AuthenticAMD
CPU family:          16
Model:               9
Model name:          AMD Opteron(tm) Processor 6176
Stepping:            1
CPU MHz:             800.000
CPU max MHz:         2300.0000
CPU min MHz:         800.0000
BogoMIPS:            4599.77
Virtualization:      AMD-V
L1d cache:           64K
L1i cache:           64K
L2 cache:            512K
L3 cache:            5118K
NUMA node0 CPU(s):   0-5
NUMA node1 CPU(s):   6-11
NUMA node2 CPU(s):   12-17
NUMA node3 CPU(s):   18-23
NUMA node4 CPU(s):   24-29
NUMA node5 CPU(s):   30-35
NUMA node6 CPU(s):   36-41
NUMA node7 CPU(s):   42-47
Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid amd_dcm pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt nodeid_msr hw_pstate vmmcall npt lbrv svm_lock nrip_save pausefilter

bazel을 사용하여 소스에서 빌드하여 문제를 해결했습니다. wl 파일을 생성했습니다. 그런 다음 pip install whl 파일 경로를 수행했습니다.

예, CPU가 AVX( Illegal instruction (core dumped) 오류의 가능한 원인)를 지원하지 않는 경우 소스에서 컴파일해야 합니다. 이로 인해 AVX 명령어 없이 코드가 생성된 다음 사용할 수 있습니다.

또한 이는 pip가 플랫폼에서 사용할 수 있는 가장 높은 최적화 수준으로 빌드되었음을 보장하므로 실제로 다른 플랫폼에서 빌드된 pip를 사용하는 것과 비교하여 속도 향상을 볼 수 있습니다. 힘에 집중하세요.

conda로 tensorflow를 설치하려면 다음 명령을 실행하십시오.
conda install -c conda-forge tensorflow
그것은 나를 위해 작동합니다.

이 페이지가 도움이 되었나요?
0 / 5 - 0 등급