当前位置: 首页 > 知识库问答 >
问题:

如何在CPU上运行Tensorflow

南宫天逸
2023-03-14

我已经在Ubuntu 14.04上安装了tensorflow的GPU版本。

我在一个GPU服务器上,在那里Tenorflow可以访问可用的GPU。

我想在CPU上运行tenorflow。

通常我可以使用env CUDA\u VISIBLE\u DEVICES=0在0号GPU上运行。

如何在CPU之间进行选择?

我对用tf重写代码不感兴趣。设备(“/cpu:0”):

共有3个答案

丌官瀚
2023-03-14

您可以为每个tf应用设备计数参数。会话:

config = tf.ConfigProto(
        device_count = {'GPU': 0}
    )
sess = tf.Session(config=config)

另请参阅protobuf配置文件:

tensorflow/core/framework/config.proto

宇文修筠
2023-03-14

如果上述答案不起作用,请尝试:

os.environ['CUDA_VISIBLE_DEVICES'] = '-1'
戚良弼
2023-03-14

也可以将环境变量设置为

CUDA_VISIBLE_DEVICES=""

无需修改源代码。

 类似资料:
  • 问题内容: 我正在尝试在运行mako内核的Nexus 4的所有cpus上设置性能监视器用户模式启用寄存器。 现在,我在可加载模块中设置寄存器: 问题是on_each_cpu仅在Online cpus上运行该功能,如printk语句所示: 当我调用on_each_cpu时,只有四个在线。所以我的问题是,如何强制cpu联机,或者如何强制某个cpu执行代码?谢谢 问题答案: 你并不需要运行在每个CPU的

  • 我正在尝试让TensorFlow的函数在我的GPU上运行;假设这个TensorFlow源页面有一个函数,该函数在CPU和GPU上运行时比较的输出,那么这似乎是可能的。但是,在使用代码进行测试时: 我得到了错误: 谢了!

  • 问题内容: 是否可以让linux库(例如“ libloader.so”)加载另一个库来解析任何外部符号? 我有一堆代码,这些代码有条件地被编译以支持SIMD级别(SSE2,AVX,AVX2)。如果构建平台与运行时平台相同,则此方法运行良好。但这阻碍了不同处理器代之间的重用。 一种想法是让哪个调用链接不直接实现。而是根据cpuflags 从另一个已加载的库(例如,等等)中解析(绑定?)该符号。 需要

  • 我有一个HttPURLConnection程序,它正在与运行在同一台机器上(本例中是CentOS)但部署在其他tomcat服务器上的某个应用程序建立连接。这意味着在部署在不同tomcats上的两个应用程序之间建立了HttpConnection,其中两个tomcats都运行在同一台机器上。 下面是我的代码: 然而,同样的代码在生产环境中运行得非常好,每秒大约有50个请求。 当我使用JVisualVM

  • 什么JVM在CPU+GPU上运行? 我知道像Oracle、Zulu、OpenJDK这样的JVM,但没有一个是为了将处理卸载到GPU上而设计的。

  • 我有一个C++程序,我想编译成汇编,然后汇编器会把它编译成机器代码。 现在,据我所知,为了将汇编代码转换为机器代码,汇编程序需要某种表来映射汇编指令到实际的机器指令。 汇编程序将使用哪个表?我的C++程序是否有可能不能在所有CPU上运行,因为CPU使用不同的表,这意味着相同的机器代码在不同的CPU上会做不同的事情?