Как открыть файл и разбросать его с помощью mpi4py? - PullRequest
2 голосов
/ 24 февраля 2020

Я пытаюсь открыть текстовый файл и разбросать его по разным узлам, используя mpi4py. Файл слишком большой, чтобы использовать Python объекты, поэтому я использую Numpy. Я получаю ошибку: KeyError: '1w'

Вот код:

from mpi4py import MPI
import sys
import numpy as np

comm = MPI.COMM_WORLD
size = comm.Get_size()
rank = comm.Get_rank()

if rank == 0:
  with open(sys.argv[1]) as f:
      d = np.array(list(f.read()))
  while(d.size % size != 0): # pad the array to get everything the same
    d = np.append(d, [0])
  m = int(d.size / size)
  comm.bcast(m)
else:
  d = None
  m = comm.bcast(None)

d_loc = np.zeros(m, dtype='int8')

comm.Scatter(d, d_loc)
...