【发布时间】:2016-11-02 20:11:59
【问题描述】:
我有一个在集群中运行的程序实例,该程序基本上执行数值计算,使用h5py 将数值数组读取和写入HDF5 文件。
当我尝试在集群的不同计算节点上运行我的代码的多个实例时,所有正在运行的脚本都崩溃了。报错是
KeyError: '无法获取链接信息(错误的符号表节点签名)'
幸存的脚本继续运行没有问题。我在所有与 HDF5 对话的函数中都使用了 with 语句,以确保在 I/O 操作完成后正确关闭文件。
谁能解释一下这个错误是什么意思?
【问题讨论】:
-
您是否要同时将来自多个进程的数据写入一个 hdf5 文件?
-
是的,我正在尝试在同一个 HDF5 文件中写入来自多个进程的数据。我应该使用锁吗?
-
我认为您不能同时从多个进程访问同一个 hdf5 文件。您只能使用 MPI 来执行此操作,请参阅 docs.h5py.org/en/latest/mpi.html。否则请务必同时仅使用一个进程打开文件。
-
Ziky 你是对的,谢谢