В моем приложении MPI есть некоторый процесс, который генерирует большие данные. Скажем, у нас есть процесс N+1 (один для главного управления, другие рабочие), каждый из рабочих процессов генерирует большие данные, которые теперь просто записываются в обычный файл с именем файл1, файл2, ..., файлN. Размер каждого файла может быть совершенно разным. Теперь мне нужно отправить все файлы M в процесс ранга M, чтобы выполнить следующую работу, так что это точно так же, как передача данных всем ко всем.
Моя проблема в том, как мне использовать MPI API для эффективной отправки этих файлов? Раньше я использовал общую папку Windows для их передачи, но я думаю, что это не очень хорошая идея.
Я думал о MPI_file и MPI_All_to_all, но эти функции не подходят для моего случая. Простые MPI_Send и MPI_Recv кажутся сложными для использования, потому что каждый процесс должен передавать большие данные, и я пока не хочу использовать распределенную файловую систему.