Я довольно новичок в мире Python и MPI.Я смотрю на метод разброса и задаюсь вопросом, можно ли разбросать словарь.
Я работал с целыми числами и другими типами данных, но, так как словарь может содержать все, что я не уверен, можно ли его разбросатькак обалденный объект.Ниже я попробовал, но это, очевидно, не работает.Я не знаю, как разбросать «данные», даже если это возможно, поскольку данные - это словарь.
from mpi4py import MPI
import numpy as np
comm = MPI.COMM_WORLD
size = comm.Get_size()
rank = comm.Get_rank()
#data = None
data = {'a': 7,'b': 3.14}
if rank == 0:
data = np.linspace(1,size) #this is wrong...how do I scatter a dictionary
recvbuf = np.empty(data,dtype=None)
print comm.Scatter(data, recvbuf, root=0)
print "Rank: ",rank," recvbuf received:",recvbuf