У меня есть большой CSV-файл, и мне нужно обработать каждую строку, чтобы подсчитать несколько слов. Мне нужно использовать некоторый подход MPI для распределения обработки данных между несколькими процессами. В настоящее время я использую scatter/gather в mpi4py
библиотеке. Проблема в том, что мне нужно создать массив с длиной, равной количеству процессов. Но я получаю ошибку памяти при создании списка для большого количества строк.
size = comm.Get_size()
f=open('x.csv')
lines=[[] for _ in range(size)]
for line in f:
# this line raises memory error after about 250000 rows are appended
lines[i%size].append(line)
Есть ли другой способ передачи больших данных между этими процессами?