我对h5py/mpi4py
很陌生。我正在尝试将某些数据写入单个.h5文件,以便如果将写入rank == 0
个正测试数据(正数据集)值和rank == 1
个负测试数据,则将有2个进程(负数据集)值将被写入。但是当我尝试使用
mpiexec -n 2 python parallel_exec.py
我要
IOError:无法创建文件(无法锁定文件,errno = 11,错误消息=“资源暂时不可用”)。
有人可以帮我吗
from mpi4py import MPI
import h5py
rank = MPI.COMM_WORLD.rank
f = h5py.File('parallel.hdf5', 'w')
f.create_dataset('face_val', (num_pos_imgs + num_neg_imgs, 1), np.int)
f.create_dataset('eye_val', (num_pos_imgs + num_neg_imgs, 2), np.float32)
hdf5_index = 0
if rank == 0:
for i in enumerate(negative_images):
f['face_val'][hdf5_index, ...] = 0
f['eye_val'][hdf5_index, ...] = (magick_number, magick_number)
hdf5_index += 1
elif rank == 1:
for i in enumerate(positive_images):
f['face_val'][hdf5_index, ...] = 1
f['eye_val'][hdf5_index, ...] = (magick_number_positive, magick_number_positive)
hdf5_index += 1
预期:
在2个进程中运行并行hdf5,并输出生成的.hdf5文件
知道:
IOError:无法创建文件(无法锁定文件,errno = 11,错误消息=“资源暂时不可用”)