OpenMDAOv1.x:警告:并行派生不在MPI下运行

jth*_*mas 0 parallel-processing mpi openmdao

我刚刚在超级计算机上安装了OpenMDAOv1.3.安装成功,所有测试都通过或跳过.但是,当我运行测试时,我得到以下警告:

*path/OpenMDAO/openmdao/core/driver.py:228: UserWarning: parallel derivs %s specified but not running under MPI
  warnings.warn("parallel derivs %s specified but not running under MPI")
Run Code Online (Sandbox Code Playgroud)

我不知道该怎么做(如果有的话),所以我正在寻找有关警告信息含义的信息.我们计划与OpenMDAO的内置MPI功能并行运行.我目前在系统上加载了openmpi-1.8.4.

小智 5

你可以忽略那个警告......这只是因为测试没有在MPI下运行.(测试将被修复以抑制警告).

您需要执行其他步骤才能并行运行.这还没有记录,但是我们中的一些人在anaconda环境中工作时已经使用了以下步骤:

sudo apt-get install openmpi-bin openmpi-doc libopenmpi-dev
pip install mpi4py # do not use conda install, this causes an mpich conflict
sudo apt-get install liblapack-dev gfortran
pip install --no-deps git+https://bitbucket.org/petsc/petsc@v3.5 
conda install cython
pip install --no-deps  git+https://bitbucket.org/petsc/petsc4py@3.5
Run Code Online (Sandbox Code Playgroud)

要验证您是否合适,可以在mpitests目录中运行测试,如下所示:

cd mpitests
find . -name "*.py" -exec python {} \;
Run Code Online (Sandbox Code Playgroud)

或者,您可以使用testflo包

pip install git+https://github.com/naylor-b/testflo.git
Run Code Online (Sandbox Code Playgroud)

从OpenMDAO目录中,发出以下命令:

testflo .  -i
Run Code Online (Sandbox Code Playgroud)

请注意,这假设是Linux类型的操作系统.目前不支持Windows上的并行执行