使用所需的优化标志重新构建 Tensorflow

2024-04-17

预先感谢您的考虑,

我刚刚使用以下命令安装了tensorflow(在已安装Ubuntu 16.04和CUDA 8.0的新机器上)程序 http://www.nvidia.com/object/gpu-accelerated-applications-tensorflow-installation.html:

最初,我使用--copt=-march=native。 我收到消息了

Wtensorflow/core/platform/cpu_feature_guard.cc:45] TensorFlow 库未编译为使用 SSE3 指令,但这些指令可在您的计算机上使用,并且可以加快 CPU 计算速度。

Wtensorflow/core/platform/cpu_feature_guard.cc:45] TensorFlow 库未编译为使用 SSE4.1 指令,但这些指令可在您的计算机上使用,并且可以加快 CPU 计算速度。

W tensorflow/core/platform/cpu_feature_guard.cc:45] TensorFlow 库未编译为使用 SSE4.2 指令,但这些指令可在您的计算机上使用,并且可以加快 CPU 计算速度。

Wtensorflow/core/platform/cpu_feature_guard.cc:45] TensorFlow 库未编译为使用 AVX 指令,但这些指令可在您的计算机上使用,并且可以加快 CPU 计算速度。

Wtensorflow/core/platform/cpu_feature_guard.cc:45] TensorFlow 库未编译为使用 AVX2 指令,但这些指令可在您的计算机上使用,并且可以加快 CPU 计算速度。

W tensorflow/core/platform/cpu_feature_guard.cc:45] TensorFlow 库未编译为使用 FMA 指令,但这些指令可在您的计算机上使用,并且可以加快 CPU 计算速度。

因此,为了尝试解决此问题,我搜索了解决方案并使用了以下答案如何使用SSE4.2和AVX指令编译Tensorflow? https://stackoverflow.com/questions/41293077/how-to-compile-tensorflow-with-sse4-2-and-avx-instructions#

通过使用 nVidia 的上述过程,从

bazel build -c opt --copt=-mavx --copt=-mavx2 --copt=-mfma --copt=-mfpmath=both --copt=-msse4.2 --config=cuda -k //tensorflow/tools/pip_package:build_pip_package

但我仍然收到与上面相同的消息。我觉得我犯了一个非常简单的错误,有什么想法吗?

Thanks!


通过遵循 NVIDIA 指令,您将在 SIMD 指令优化可用 (1.0r) 之前将 TensorFlow 存储库重置为较旧的提交:

git reset --hard 70de76e

此提交可以追溯到以前的版本,当时此功能尚未实现,因此它实际上按预期工作。

解决方案是遵循官方 TensorFlow 文档 https://www.tensorflow.org/install/install_sources.

对于未来的情况,始终建议在寻求第三方解决方案之前使用官方资源,因为它们可能更有帮助,官方资源更可靠且维护得更好。

请注意,在配置过程中,由于上述原因,系统不会提示您要使用哪些 CPU 指令来构建 TF,因此您无法使用它们进行构建。

Please specify optimization flags to use during compilation when bazel option "--config=opt" is specified [Default is -march=native]:

按照官方文档进行操作即可。如果您有任何后续问题,请随时提出,或者如果您遇到任何问题,请在 Github 上提出问题:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用所需的优化标志重新构建 Tensorflow 的相关文章

随机推荐

  • 如何在 Visual Studio Code 中更新 C# 版本?

    我已经安装了 C 扩展 我的 NET 框架已更新 但我无法修复它 我已经找到了修复方法 希望这对将来的人有所帮助 找你的 csproj file 将 LangVersion 属性更改为所需版本
  • AMD64 ABI 中的空类会发生什么情况?

    我正在看AMD64 ABI http www cs tufts edu comp 40 readings amd64 abi pdf并且它似乎没有指定如何传递空类类型 对于空类成员函数 似乎this照常传递 但对于空类 Clang 生成的代
  • RcppEigen - 从包中的内联函数到 .cpp 函数和“Map”

    一切似乎都在我的包中工作 但我想检查其步骤是否正确以及使用 Map 的内存使用情况 这是一个简单的示例 位于内联示例和fastLm 例子 这是一个内联函数 它取矩阵每一列的最大值 library Rcpp library inline li
  • 如何将 long (currentTimeInMillis) 转换为 UTC 时间戳?

    我的客户正在向我发送Long这可以被认为是 scala gt System currentTimeMillis res3 Long 1441056836609 scala gt 我如何将其转换为UTC时间戳 在服务器上 我们使用Java 8
  • Threejs + Vanilla JS 和 React-Three-Fiber + Create-React-App 之间的颜色差异

    这已经困扰我一段时间了 为什么 React Three Fiber 中的材质颜色看起来比 Threejs 中暗淡 两种实现中的对象及其属性是相同的 Threejs 版本相同 在新引导中实施 create react app 没有额外的依赖项
  • 在 Eclipse 中编辑代码时如何禁用粗体字体?

    我不希望 Eclipse 以粗体显示任何关键字 我浏览了 首选项 窗口中的很多选项 但找不到执行此操作的方法 是否可以 这取决于您正在编辑的文件类型 例如 在 Java 中 窗口菜单 gt 首选项 gt Jave gt 编辑器 gt 语法着
  • Java反应式框架的比较[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我看到许多框架 库声称它们可以帮助用 Java 构建响应式应用程序 例如 Akka Vert x RxJava Reactor QBit 等 他
  • 如何将 activemq-core.xsd url 与 jar 文件中找到的 activemq.xsd 关联?

    有人知道如何关联activemq core xsd网址与activemq xsd在 jar 文件 activemq core 5 2 0 jar 中找到 我在互联网上找到了一些解决方案 但没有成功 我收到此错误 Caused by org
  • 如何在 Rails 中保守 Secrets.yml 的秘密?

    我对 Rails 还很陌生 但我有一些 PHP 和其他语言编程经验 我真的很喜欢 Rails 并且正在为我的公司开发一个应用程序 但我仍然不完全理解 Secrets yml 文件如何与 git 和 heroku 配合使用 我知道秘密用于身份
  • Swiper 在 Jquery Mobile 中不起作用

    我在用idangero us 的 Swiper http www idangero us sliders swiper index php使用 Jquery 移动 我在这里使用滚动容器滑动器对于内容滑块 只是面临着将代码嵌入在一起的很多问题
  • rake db:rollback 为什么要回滚三步?

    通常当我这样做时 rake db rollback 它会回滚一次迁移 但现在 反复多次 已经回退了3步 怎么会有这种行为呢 我使用的是 Rails 3 2 13 您可以像这样指定步骤数 rake db rollback STEP 3 The
  • 如何更改Cloud Functions部署中使用的bundler版本?

    Context 从几天前开始 云功能的部署一直失败 Gemfile source https rubygems org ruby gt 2 7 0 git source github repo name https github com r
  • 如何在 Clojure 中处理大型二进制数据?

    如何在 Clojure 中处理大型二进制数据文件 我们假设数据 文件大约为 50MB 小到足以在内存中处理 但不是简单的实现 以下代码正确地从小文件中删除 M 但它会抛出OutOfMemoryError对于较大的文件 如 6MB defn
  • 需要在单个 Facebook 应用程序中添加多个域

    我正在尝试在我的 Facebook 应用程序中添加多个域 但尚未成功 我做了很多研究 发现 Facebook 不断改变其设置 添加多个域名最初是不可能的 但后来他们让它成为可能 然后又变得不可用 但没有更新如果现在可以完成的话 无论如何 我
  • 在 Windows 上安装 gokogiri 时找不到错误 libxml2

    我正在尝试安装gokogiri https github com moovweb gokogiri在 Windows 8 机器上按照 github 页面中的说明进行操作 安装 sudo apt get install libxml2 dev
  • ofstream::open 什么时候会失败?

    我正在尝试在 C 中尝试 捕获 抛出语句进行文件处理 并且我编写了一个虚拟代码来捕获所有错误 我的问题是为了检查我是否正确 我需要发生错误 现在我可以轻松检查infile fail 只需不在目录中创建所需名称的文件即可 但我怎样才能检查同样
  • Java编译器选择错误的重载[重复]

    这个问题在这里已经有答案了 Test public void test MyProperties props new MyProperties props setProperty value new Date StringUtils isN
  • 更新实体框架中的数据库架构

    我安装了 VS SP1 并使用了实体框架 我从现有数据库创建了一个架构并尝试了一些基本操作 除了数据库架构更新之外 大部分进展顺利 我以各种基本方式更改了数据库 添加了一个新表 删除了一个表 向现有表添加新列 从现有表中删除一列 更改了现有
  • linux 日期命令中的无效日期错误

    在脚本中我使用命令 CURRENT DATE tmp date d CURRENT DATE Y m d 它给出了错误date invalid date Y m d 可能是什么原因 我知道变量 CURRENT DATE 有其值 date d
  • 使用所需的优化标志重新构建 Tensorflow

    预先感谢您的考虑 我刚刚使用以下命令安装了tensorflow 在已安装Ubuntu 16 04和CUDA 8 0的新机器上 程序 http www nvidia com object gpu accelerated application