如何在GPU集群中配置Python?

时间:2017-11-09 12:05:29

标签: python tensorflow pip hpc

我有一个GPU集群,一个存储节点和几个计算节点,每个节点有8个GPU。我正在配置群集。

其中一个任务是配置python,我们需要的是几个版本的Python和一些python包,对于某些包我们可能需要它的几个版本,例如tensorflow的不同版本。

所以问题是如何配置python和包以便它“#”;方便使用我想要使用的不同版本的包。

我在每个计算节点和存储节点中都安装了python2.7和python3.6。但我认为,如果要配置大量的计算节点,这是一个好方法。其中一个解决方案是在群集的共享目录中安装python而不是默认的/ usr / local路径。 任何人都有更好的方法来做到这一点?

我现在使用的是OpenPBS(Torque),我是HPC的新手。

非常感谢。

2 个答案:

答案 0 :(得分:1)

您可以在每个节点上都可访问的共享目录中安装Modules software environment。然后很容易加载特定版本的python或TensorFlow:

module load lang/Python/3.6.0
module load lib/Tensorflow/1.1.0

然后,如果对于某些软件包我们可能需要它的几个版本,您可以查看允许安装同一软件包的多个版本的Python virtualenv。要在所有节点上共享它,请考虑在共享挂载点上创建virtualenv。

答案 1 :(得分:0)

您可以在特定目录下的存储节点上安装每个软件,并将该目录安装在计算节点上。然后,您不必多次安装每个软件。

此问题的常见解决方案是Environment Modules。您将软件安装为模块。这意味着该软件与模块文件一起安装在某个目录(例如/opt/modules/python/3.6/)中。执行module load python/3.6时,模块文件设置环境变量,使Python3.6位于PATHPYTHONPATH等。

这样可以很好地分离您的软件堆栈,还可以安装更新版本的tensorflow而不会弄乱环境。