我需要并行处理一个非常大的numpy数组(55x117x256x256)。尝试用通常的多处理方法传递它会产生一个AssertionError,我理解这是因为数组太大,无法复制到每个进程中。因此,我想尝试使用共享内存进行多处理。(我对其他方法持开放态度,只要它们不太复杂)。在
我见过一些关于python多处理的共享内存方法的问题,例如
import numpy as np
import multiprocessing as mp
unsharedData = np.zeros((10,))
sharedData = mp.Array('d', unsharedData)
看起来效果不错。但是,我还没有看到一个使用多维数组来实现这一点的示例。在
我试过将多维数组粘贴到mp.Array
中,这给了我TypeError: only size-1 arrays can be converted to Python scalars
。在
我可以将数组展平,但如果可以避免的话,我宁愿不要。在
有什么诀窍让多处理数组来处理多维数据?在
目前没有回答
相关问题 更多 >
编程相关推荐