【问题标题】:Set the number of CPU cores设置CPU核心数
【发布时间】:2023-03-22 00:12:02
【问题描述】:

我在 R 下测试 keras tensorflow,我想知道如何指定 CPU 内核的数量。我只找到没有keras的python下的tensorflow解决方案。


> library(keras)
> library(doParallel)
> cl <- makeCluster(2)
> registerDoParallel(cl)
> is_keras_available()
[1]TRUE
> foreach(i=1:3) %dopar% { is_keras_available()}
Error in { : 
  task 1 failed - "impossible to find the function "is_keras_available""
> parallel::stopCluster(cl)

【问题讨论】:

    标签: r tensorflow keras


    【解决方案1】:

    使用doParallel库,您可以使用detectCores()函数检测内核数,并指定使用registerDoParallel()函数的内核数。

    看看https://cran.r-project.org/web/packages/doParallel/vignettes/gettingstartedParallel.pdf

    记得通过.export 参数将您的库包含在代码的并行化中

    foreach(i=1:3, .packages = c("keras")) %dopar% { is_keras_available()}
    

    【讨论】:

    • 您好,我尝试这样做,但出现错误,我编辑了我的消息以放置错误。
    • 它无法识别is_keras_available() 函数。我已经编辑了在每个核心中加载 de 库的答案。
    • 我收到此错误:e$fun(obj,substitute(ex),parent.frame(),e$data) 中的错误:无法找到变量“keras”。我尝试这样做:foreach(i = 1:3, .export = c(library("keras"))) %dopar% { m &lt;- keras_model_sequential()} 我收到此错误:e$fun(obj,substitute(ex),parent.frame(),e$data) 中的错误:无法找到变量“doParallel”
    • 对不起,.export 是加载对象,你需要穿上.packages。在代码中修改。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-29
    • 1970-01-01
    • 2017-10-04
    • 2011-02-20
    • 1970-01-01
    • 1970-01-01
    • 2011-12-24
    相关资源
    最近更新 更多