gpt4 book ai didi

linux - 如何能够 "move"移动到新机器时脚本所需的所有必要库

转载 作者:IT王子 更新时间:2023-10-29 00:06:28 26 4
gpt4 key购买 nike

我们致力于科学计算,定期向不同的计算集群提交计算。为此,我们使用 linux shell 进行连接,并通过 SGE、Slurm 等(取决于集群)提交作业。我们的代码由 python 和 bash 脚本以及几个二进制文件组成。其中一些依赖于外部库,例如 matplotlib。当我们开始使用一个新的集群时,这是一场噩梦,因为我们需要告诉管理员我们需要的所有库,有时他们无法安装所有这些库,或者他们只有无法升级的旧版本。所以我们想知道我们能在这里做什么。我想知道我们是否可以以某种方式“打包”我们需要的所有库以及我们的代码。你觉得可能吗?否则,我们如何在不需要管理员安装任何东西的情况下迁移到新集群?

最佳答案

关键是自己编译你需要的所有代码,使用集群管理员安装的编译器/库/MPI工具链,这样

  1. 您的软件已针对集群硬件正确编译,并且
  2. 您不依赖管理员来安装软件。

以下内容在这种情况下非常有用:

  • Ansible 、上传/管理配置文件、rc 文件、设置权限、编译二进制文件等,并在新集群上轻松部署新环境
  • Easybuild安装您的 Python 版本和所有需要的依赖项,并安装其他科学软件,这要归功于社区支持的构建过程
  • CDE在您的笔记本电脑上为您的二进制文件构建一个包含所有依赖项的包,并按原样在集群上使用它。

更具体地针对Python,你可以使用

  • virtual envs在所有集群中设置一组一致的 Python 模块,独立于已安装的模块;或
  • AnacondaCanopy使用 Python 科学分布

在所有集群中安装一致的 Python。

关于linux - 如何能够 "move"移动到新机器时脚本所需的所有必要库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39512579/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com