在 运行 时间内更改 MPI 设置
Changing MPI settings during run-time
是否可以在运行时更改任何 MPI 设置?我所知道的唯一类似的事情是使用内部和内部通信器进行操作 (docs)。
你还知道一些其他的事情吗?我正在考虑更改 PATH、MPIEXEC_TIMEOUT、PATH 前缀等
我需要它只是为了一个项目的演示目的,所以任何可以在运行时设置的东西都足够了:-)
现在的标准方法是使用控制变量 (CVAR)。这些都是特定于实现的,因此您必须查看特定库的文档。通常,这些可以使用环境变量进行设置。
例如,在 MPICH 3.2 中,有一个名为 MPIR_CVAR_ASYNC_PROGRESS
的环境变量,允许您在运行时打开和关闭异步进程。这些东西记录在 tarball 中一个名为 README.envvar
.
的文件中
这些东西在实现之间将不一致,因此您必须根据您所在的位置注意名称 运行。例如,在 Open MPI 中,我想这些环境变量中的大多数都将带有类似 OMPI_something
的前缀,因为这更符合该项目使用的命名方案。
是否可以在运行时更改任何 MPI 设置?我所知道的唯一类似的事情是使用内部和内部通信器进行操作 (docs)。
你还知道一些其他的事情吗?我正在考虑更改 PATH、MPIEXEC_TIMEOUT、PATH 前缀等
我需要它只是为了一个项目的演示目的,所以任何可以在运行时设置的东西都足够了:-)
现在的标准方法是使用控制变量 (CVAR)。这些都是特定于实现的,因此您必须查看特定库的文档。通常,这些可以使用环境变量进行设置。
例如,在 MPICH 3.2 中,有一个名为 MPIR_CVAR_ASYNC_PROGRESS
的环境变量,允许您在运行时打开和关闭异步进程。这些东西记录在 tarball 中一个名为 README.envvar
.
这些东西在实现之间将不一致,因此您必须根据您所在的位置注意名称 运行。例如,在 Open MPI 中,我想这些环境变量中的大多数都将带有类似 OMPI_something
的前缀,因为这更符合该项目使用的命名方案。