Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
确保所有机器上的所有代码都相同-python mpi_Python_Mpi - Fatal编程技术网

确保所有机器上的所有代码都相同-python mpi

确保所有机器上的所有代码都相同-python mpi,python,mpi,Python,Mpi,我的MPI环中最多可以有20台机器。我如何能够自动检查所有机器是否使用相同版本的python代码?有没有一种方法可以生成程序中所有模块/源文件的散列?除了对代码的zip存档进行散列之外,我不知道还有什么方法可以对包内容进行散列。但是为什么不创建一个本地包存储库呢。让MPI节点下载包的最新版本,并在运行开始时安装它(本地或在virtualenv中,如果您愿意的话)?您也可以在代码中使用setuptools/distribute检查软件包版本 或者,您可以使用SCM,在每次运行之前更新代码。然后,您

我的MPI环中最多可以有20台机器。我如何能够自动检查所有机器是否使用相同版本的python代码?有没有一种方法可以生成程序中所有模块/源文件的散列?

除了对代码的zip存档进行散列之外,我不知道还有什么方法可以对包内容进行散列。但是为什么不创建一个本地包存储库呢。让MPI节点下载包的最新版本,并在运行开始时安装它(本地或在virtualenv中,如果您愿意的话)?您也可以在代码中使用setuptools/distribute检查软件包版本

或者,您可以使用SCM,在每次运行之前更新代码。然后,您可以检查scm修订号作为版本的代理


就个人而言,第一个选项感觉更好,因为它在这个过程中加入了一些规则(在适当的时候,您必须实际构建一个新的包版本)。

最后,我生成了一个可能更改的主文件的散列,并发送散列以确认内容。