параллельная обработка Python - PullRequest
2 голосов
/ 16 ноября 2011

Я новичок в Python. У меня 2000 файлов каждый около 100 МБ. Я должен прочитать каждый из них и объединить их в большую матрицу (или таблицу). Могу ли я использовать параллельную обработку для этого, чтобы сэкономить время? Если да, то как? Я пытался искать, и все кажется очень сложным. В настоящее время требуется около 8 часов, чтобы сделать это поочередно. У нас действительно большой сервер с одной оперативной памятью Tera и несколькими сотнями процессоров. Как я могу эффективно использовать это?

Спасибо за вашу помощь.

1 Ответ

1 голос
/ 16 ноября 2011

Вы можете предварительно обработать файлы в отдельных процессах, используя модуль подпроцесс ;однако, если финальная таблица будет храниться в памяти, то этот процесс в конечном итоге станет для вас узким местом.

Существует еще один возможный подход с использованием общей памяти с mmap объектами.,Каждый подпроцесс может быть ответственным за загрузку файлов в подраздел отображенной памяти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...