在 Windows 上使用 Anaconda 使用 mpio 配置 H5py

Configuring H5py with mpio using Anaconda on Windows

我想创建一个 h5 文件,为此,在我的例子中,不同的进程必须单独读取文件,并将一些值附加到公共数据集的列。

我想通过 python 使用 mpio 和 h5py 来完成它,解释器是一个 conda 环境。 但是当我尝试启动一个像这样的简单程序时:(如文档站点所示:http://docs.h5py.org/en/stable/mpi.html

from mpi4py import MPI
import h5py

rank = MPI.COMM_WORLD.rank  # The process ID (integer 0-3 for 4-process run)

f = h5py.File('parallel_test.hdf5', 'w', driver='mpio', comm=MPI.COMM_WORLD)

dset = f.create_dataset('test', (4,), dtype='i')
dset[rank] = rank

f.close()

我总是遇到这个错误:

AttributeError: 'h5py.h5p.PropFAID' 对象没有属性 'set_fapl_mpio'

在我安装的Anaconda环境中:

conda install h5py
conda install mpio

我想知道的是,是否可以在 Windows 上进行此类配置,或者如何解决此错误。

我一直在寻找一种干净的方法来使用 conda 安装具有 MPI 支持的 h5py,以下方法对我有用:

conda install -c conda-forge "h5py>=2.9=mpi*"

我在这个 GitHub 讨论中找到它:https://github.com/conda-forge/h5py-feedstock/issues/44

不过,我无法在 Windows 上对其进行专门测试。