Illegal instruction (core dumped) nach Ausführung importieren tensorflow
Erstellte ich eine frische virtuelle Umgebung: virtualenv -p python2 test_venv/
Und installiert tensorflow: pip install --upgrade --no-cache-dir tensorflow
import tensorflow
gibt mir Illegal instruction (core dumped)
Bitte helfen Sie mir zu verstehen, was Los ist und wie ich es beheben kann. Danke.
CPU-Daten:
-cpu
description: CPU
product: Intel(R) Core(TM) i3 CPU M 330 @ 2.13GHz
bus info: cpu@0
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
Stacktrace erhalten mit 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 ?? ()
Haben Sie versucht, die Installation von älteren tensorflow Versionen? pip installieren tensorflow==1.4 oder 1.3 oder 1.2?
Es funktioniert mit der version 1.5, aber das ist nicht ideal, da vermutlich docs und tutorials konzentrieren sich auf die neueste version. Aber ich nehme an, es ist so gut wie es geht. Wenn Sie nach einer Antwort, ich werde es akzeptieren.
Es funktioniert mit der version 1.5, aber das ist nicht ideal, da vermutlich docs und tutorials konzentrieren sich auf die neueste version. Aber ich nehme an, es ist so gut wie es geht. Wenn Sie nach einer Antwort, ich werde es akzeptieren.
InformationsquelleAutor Gerry | 2018-03-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich würde verwenden eine ältere version. Sieht aus wie deine CPU nicht unterstützt AVX-Anweisungen.
Zitiert aus Ihren Release Seite
Haben Sie mindestens zwei Möglichkeiten:
Verwenden tensorflow 1.5 oder älter
Build from source
Hinsichtlich Ihrer Sorge für die Unterschiede, verpassen Sie auf neue features, aber die meisten grundlegenden Funktionen und Dokumentationen sind gar nicht so unterschiedlich.
InformationsquelleAutor Dinesh
Leider, 1.6 gegeben hat, viele Menschen den gleichen Fehler. Ich erhielt es nach der Installation von 1.7 auf einer Maschine mit einem alten Core2-CPU. Ich habe abgerechnet mit 1,5, da kann ich nicht für die große Grafikkarte in der Maschine mit dem up-to-date-Prozessor!
InformationsquelleAutor mjflory
Es ist ein issue auf github über das, was scheint bekommen zu haben, wenig Interesse aus der tensorflow team, leider.
Gibt es ein paar community-builds rund um das web, das könnte funktionieren, je nach Ihrer situation:
InformationsquelleAutor Laurent S
Wie bereits in der akzeptierten Antwort, dieses Problem kann behoben werden, entweder durch die Installation einer älteren version von TensorFlow (v1.5) oder das erstellen aus den Quellen. Zwischen den beiden, das erstellen aus den Quellen ist wohl eine bevorzugte route trotz der zusätzlichen Anstrengung. Gewährt, dass die Binärdatei enthält die aktualisierten Komponenten von TensorFlow.
Dieser Artikel erklärt, wie Sie zu bauen TensorFlow von Quellen und optimiert für die ältere CPU. Der Schlüssel liegt in der Erkennung der CPU-flags und enable alle CPU-flags, die für die Optimierung beim konfigurieren der build.
Den folgenden Befehl verwendet, um zu erkennen, die Häufig CPU-Optimierung-flags:
Wenn durch die Ausführung des Befehls
-mavx
- und/oder-mavx2
ist nicht gezeigt, kann bestätigt werden, dass die AVX-Unterstützung fehlt, und die Quelle bauen sollte getan werden, mit anderen Optimierungs-flags in der Ausgabe angezeigt.In eine Verwandte Artikel, die gemeinsame Ursache der dieses Problem besprochen wird und weitere details, die als zusätzliche Referenz.
InformationsquelleAutor mikaelfs