【问题标题】:Using a conda environment to run a job in qsub使用 conda 环境在 qsub 中运行作业
【发布时间】:2021-02-05 22:58:27
【问题描述】:

我想使用qsub 提交一个运行一些使用 Numpy 的 Python 代码的作业。 Numpy 安装在我登录集群时激活的 conda 虚拟环境中,如果我只需在 Python 命令行解释器中调用 import numpy 就可以导入它。

但是,当我使用 qsub 提交作业时,它会尝试在不使用该环境的情况下运行作业。经过一些测试,如果我使用 -V 选项传递所有变量,我似乎可以让 qsub 在正确的环境中运行。

但是,这会混淆脚本的其他部分。如果我可以只传递让qsub 在正确的环境中运行所需的内容,那就更好了。我该怎么做?

附: here 提出的解决方案对我不起作用;错误是Unable to locate a modulefile for 'numpy'。我假设它不在当前路径中,但我不确定它在哪里。

【问题讨论】:

  • 您可以使用conda run -n my_env python my_script.py 在特定环境中运行脚本。这是你需要的吗?
  • 感谢您的建议!当时,无法识别命令 conda,因为它不在路径中。这已通过以下解决方案中的第一行修复。请原谅我不记得早点跟进。如果您的解决方案也有效,我不会感到惊讶。
  • 这可能也可以通过在脚本中使用#!/bin/bash -l shebang 来解决。

标签: linux conda qsub


【解决方案1】:

我现在有一个解决方案。在使用qsub 提交的脚本中,我添加了两行让它重新加载环境。

source [Intel Parallel Studios script that sets up conda environment variables]
source activate my_root

【讨论】:

    猜你喜欢
    • 2019-04-20
    • 1970-01-01
    • 2020-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-21
    • 2020-10-01
    • 2019-06-06
    相关资源
    最近更新 更多