Czy istnieje wersja TensorFlow dla 32-bitowego systemu Linux? Widzę tylko dostępne koło 64-bitowe i nie znalazłem nic na ten temat na stronie.TensorFlow na 32-bitowym systemie Linux?
Odpowiedz
Przetestowaliśmy tylko dystrybucję TensorFlow na 64-bitowych systemach Linux i Mac OS X oraz dystrybuujemy pakiety binarne tylko na te platformy. Wypróbuj wersję source installation instructions, aby utworzyć wersję dla swojej platformy.
EDYCJA: Jeden użytkownik opublikował instructions for running TensorFlow on a 32-bit ARM processor, który jest obiecujący dla innych 32-bitowych architektur. Te instrukcje mogą zawierać użyteczne wskazówki do pracy z TensorFlow i Bazel w środowisku 32-bitowym.
Wygląda na to, że Google nie obsługuje jeszcze tensorflow na komputerach 32-bitowych.
Na komputerze 32-bitowym systemem Centos 6.5, jest następujący błąd otrzymane po "importowej tensorflow jako TF" polecenie: ImportError: tensorflow/python/_pywrap_tensorflow.so: źle klasa ELF: ELFCLASS64
Dopóki firma Google nie rozpowszechnia 32-bitowej wersji tensorflow, zalecam również budowanie tensorflow ze źródła zgodnie z określeniem here.
Mam wbudowaną wersję TensorFlow tylko na procesor w 32-bitowym systemie Ubuntu (16.04.1 Xubuntu). Wyglądało to o wiele bardziej gładko, niż przewidywano, w przypadku tak złożonej biblioteki, która oficjalnie nie obsługuje 32-bitowych architektur.
To może być wykonane przez następujące podzbiór przecięciu tych dwóch przewodników:
Jeśli nie mam czegoś zapomniał, tutaj są kroki, jakie zrobiono:
Instalacja Oracle Java 8 JDK:
$ sudo apt-get remove icedtea-8-plugin #This is just in case $ sudo add-apt-repository ppa:webupd8team/java $ sudo apt-get update $ sudo apt-get install oracle-java8-installer
(To wszystko potrzebujesz w nieskazitelnej instalacji Xubuntu, ale google powyższe słowa kluczowe inaczej, aby przeczytać o wyborze domyślnego środowiska JRE i javac
.)
zależności:
sudo apt-get update sudo apt-get install git zip unzip swig python-numpy python-dev python-pip python-wheel pip install --upgrade pip
Obserwuje the instructions that come with Bazel, pobierz źródłowy zip Bazel (mam
bazel-0.4.3-dist.zip
), zrób jak~/tf/bazel/
katalogu i rozpakuj go tam.byłem coraz
OutOfMemoryError
podczas następnej kompilacji, ale this fix zadbał o niego (tj dodanie-J-Xmx512m
dla kompilacji bootstrap).Zadzwoń pod
bash ./compile.sh
i odczekaj bardzo długo (noc dla mnie, ale zobacz uwagi na końcu).$ git clone -b r0.12 https://github.com/tensorflow/tensorflow
Wydaje się to jedyna zmiana w kodzie źródłowym, które było konieczne!
$ cd tensorflow $ grep -Rl "lib64"| xargs sed -i 's/lib64/lib/g'
Następnie
$ ./configure
i powiedzieć nie do wszystkiego. (Zaakceptuj ustawienia domyślne w stosownych przypadkach).Poniższa wziął sporo godzin z mojej konfiguracji:
$ bazel build -c opt --jobs 1 --local_resources 1024,0.5,1.0 --verbose_failures //tensorflow/tools/pip_package:build_pip_package $ bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg $ pip install --user /tmp/tensorflow_pkg/ten<Press TAB here>
Aby zobaczyć, że jest zainstalowana, sprawdzić, czy to działa na TensorFlow Beginners tutorial. Używam jupyter qtconsole
(tj. Nowej nazwy IPython). Uruchom kod w mnist_softmax.py
. To powinno zająć trochę czasu, nawet na bardzo ograniczonych maszynach.
Z jakiegoś powodu, TensorFlow's guide to building from source nie sugeruje running the unit tests:
$ bazel test //tensorflow/...
(Tak, wpisz elips.)
Choć nie mogłem ich uruchomienia - to spędził 19 godzin próbuje połączyć libtensorflow_cc.so
, a następnie coś zabiło linkera. Było to z połówką rdzenia i limitem pamięci 1536 MB. Może ktoś inny z większą maszyną może raportować, jak przebiega test jednostki.
Dlaczego nie musieliśmy wykonywać innych czynności wymienionych w tych dwóch przewodach? Po pierwsze, większość tej pracy dotyczy dbania o interfejs GPU. Po drugie, zarówno Bazel, jak i TensorFlow stały się bardziej samodzielne od czasu napisania pierwszego z tych przewodników.
Należy zauważyć, że powyższe ustawienia dostarczone do firmy Bazel w celu kompilacji są bardzo konserwatywne (1024 MB pamięci RAM, połowa rdzenia, jedna praca na raz), ponieważ uruchamiam to za pomocą VirtualBox za pomocą jednego rdzenia netbooka o wartości 200 USD typu, który Intel robi dzieciom w trudnej sytuacji w Wenezueli, Pakistanie i Nigerii. (Przy okazji, jeśli to zrobisz, upewnij się, że wirtualny dysk twardy ma co najmniej 20 GB - próba zbudowania powyższych testów jednostkowych zajęła około 5 GB miejsca.) Budowa koła zajęła prawie 20 godzin, a skromność Głębokie CNN z the second tutorial, którego cytowanie zajmuje nawet pół godziny na nowoczesnych procesorach stacjonarnych, trwa około 80 godzin w ramach tej konfiguracji. Ktoś mógłby się zastanawiać, dlaczego nie mam pulpitu, ale prawda jest taka, że rzeczywiste szkolenie z TensorFlow ma sens tylko w wysokiej klasy GPU (lub w jego grupie) i kiedy możemy wynająć instancję AWS z takim GPU za około 10 centów za godzinę bez zobowiązań i na praktycznej podstawie ad-hoc, nie ma większego sensu szkolenie się gdzie indziej. Przyspieszenie 480000% jest naprawdę zauważalne. Z drugiej strony, wygoda posiadania lokalnej instalacji jest warta przejścia przez proces taki jak powyżej.
Użyłem powyższych kroków, aby zainstalować tensorflow w moim systemie, Ubuntu 16.04 LTS, pamięć 3,8 GB 32-bitowa, rdzeń Intel i7. To było niesamowite ... udało mi się to zrobić za 4-5 godzin. Pliki samouczka MNIST wykonane z dobrą prędkością. Wspomniane błędy pojawiły się, ale nie wchodziły w drogę. Kciuki w górę... – pritywiz
To pytanie tak naprawdę nie dotyczy programowania? – Bonatti
@Bonatti przeczytaj http://stackoverflow.com/help/on-topic –
@FranckDernoncourt Tak, i Temat 4 z "Niektóre pytania są nadal poza tematem, nawet jeśli pasują do jednej z kategorii wymienionych powyżej:' stwierdza to : 'Pytania z prośbą o zalecenie lub znalezienie książki, narzędzia, biblioteki oprogramowania, samouczka lub innych zasobów poza siedzibą są nie na temat Stack Overflow, ponieważ mają tendencję do przyciągania opinii i spamu. Zamiast tego opisz problem i to, co zostało zrobione do tej pory, aby go rozwiązać " – Bonatti