在32位Linux上的TensorFlow?
tensorflow
5
0

TensorFlow是否有适用于32位Linux的版本?我只看到可用的64位轮子,而在网站上未找到任何有关它的信息。

参考资料:
Stack Overflow
收藏
评论
共 2 个回答
高赞 时间 活跃

我们仅在64位Linux和Mac OS X上测试了TensorFlow发行版,并仅为这些平台发行了二进制软件包。尝试按照源安装说明进行操作 ,以为您的平台构建版本。

编辑:一位用户发布了在32位ARM处理器上运行TensorFlow的说明 ,这对于其他32位体系结构很有希望。这些说明可能具有使TensorFlow和Bazel在32位环境中工作的有用指针。

收藏
评论

我已经在32位Ubuntu(16.04.1 Xubuntu)上构建了仅CPU的TensorFlow版本。对于如此复杂的库,它不正式支持32位体系结构,因此运行起来比预期的要顺利得多。

可以通过遵循这两个指南的交叉子集来完成:

如果我什么都没忘记,请按照以下步骤操作:

  1. 安装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 

(这是您在原始Xubuntu安装中所需要的,但在Google上面搜索其他关键字,以了解有关选择默认JRE和javac 。)

  1. 依存关系:

     sudo apt-get update sudo apt-get install git zip unzip swig python-numpy python-dev python-pip python-wheel pip install --upgrade pip 
  2. 按照Bazel随附的说明 ,下载Bazel源zip(我得到bazel-0.4.3-dist.zip ),建立一个~/tf/bazel/类的目录,然后将其解压缩。

  3. 在下面的构建过程中,我遇到了OutOfMemoryError ,但此修复程序已解决该问题 (即,为引导构建添加-J-Xmx512m )。

  4. 调用bash ./compile.sh并等待很长时间(对我来说是一夜,但请参阅结尾处的说明)。

  5. $ git clone -b r0.12 https://github.com/tensorflow/tensorflow

  6. 这似乎是对源代码的唯一必要更改!

     $ cd tensorflow $ grep -Rl "lib64"| xargs sed -i 's/lib64/lib/g' 
  7. 然后$ ./configure 说不的一切。 (在相关情况下接受默认值。)

  8. 以下设置花费了我几个小时的时间:

     $ 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> 

要查看它是否已安装,请查看它是否可以在TensorFlow Beginners教程上运行 。我使用jupyter qtconsole (即IPython的新名称)。运行mnist_softmax.py的代码。即使在非常有限的计算机上,它也应该花费很少的时间。

由于某些原因, TensorFlow的从源代码构建的指南不建议运行单元测试

$ bazel test //tensorflow/...

(是的,键入椭圆。)

尽管我无法运行它们-花费了19个小时来尝试链接libtensorflow_cc.so ,但随后某些事情libtensorflow_cc.so了该链接器。这是一个半核心和1536 MB的内存限制。也许其他人拥有一台更大的机器,可以报告单元测试的进行情况。

为什么我们不需要做这两个演练中提到的其他事情?首先,大部分工作是关于GPU接口的。其次,自编写这些演练的第一本以来,Bazel和TensorFlow都变得更加独立。

请注意,上面提供给Bazel进行构建的设置非常保守(1024 MB RAM,半个核心,一次完成一项工作),因为我是通过VirtualBox使用$ 200上网本类型的单个核心来运行此设置的,英特尔为委内瑞拉,巴基斯坦和尼日利亚的弱势儿童提供服务。 (顺便说一句,如果这样做,请确保虚拟HDD至少为20 GB-尝试在上面进行单元测试需要大约5 GB的空间。)轮子的构建花费了将近20个小时,而且速度适中在第二篇教程中 ,如果要在现代台式机CPU上运行最多需要花费半小时,那么它需要大约80个小时。有人可能想知道为什么我没有台式机,但事实是,使用TensorFlow进行实际培训仅在高端GPU(或其中一堆)上才有意义,而何时我们可以使用这种GPU租用AWS竞价型实例每小时约10美分,而且没有承诺,并且在临时可行的基础上,在其他地方进行培训没有任何意义。 480000%的加速确实很明显。另一方面,进行本地安装的便利值得进行上述过程。

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号