Создание общего массива NumPy между процессами

Я прочитал довольно много вопросов о SO по поводу совместного использования массивов, и это кажется достаточно простым для простых массивов, но я застрял, пытаясь заставить его работать для моего массива.

import numpy as np
data=np.zeros(250,dtype='float32, (250000,2)float32')

Я пытался преобразовать это в общий массив, пытаясь как-то сделатьmp.Array принятьdataЯ также попытался создать массив с использованием ctypes как таковой:

import multiprocessing as mp
data=mp.Array('c_float, (250000)c_float',250)

Единственный способ заставить мой код работать - не передавать данные в функцию, а передавать закодированную строку для распаковки / декодирования, однако это приведет к вызову n (количество строк) процессов, что кажется избыточным. Моя желаемая реализация основана на разбиении списка двоичных строк на x (количество процессов) и передаче этого чанка,data иindex к процессам, которые работают за исключением того, чтоdata модифицируется локально, поэтому вопрос окак сделать это общимлюбой пример работы с пользовательским (вложенным) массивом numpy уже очень помог бы.

PS: этот вопрос является продолжениемМульти-обработка Python

Ответы на вопрос(2)

Ваш ответ на вопрос