2012-03-12 5 views
5

Каков самый простой способ использовать все ядра с компьютера для программы python? В частности, я хотел бы распараллелить функцию numpy (которая уже существует). Есть что-то вроде openmp при fortran в python?многопроцессорный python

+0

http://packages.python.org/ joblib / –

ответ

7

Проверьте библиотеку multiprocessing. Это даже позволяет распространять работу на нескольких компьютерах.

2

Это зависит от того, что вы хотите делать и как скомпилировано numpy на вашем компьютере (в некоторых случаях использование нескольких ячеек будет автоматическим). См. this page.

0

Это может быть или не соответствовать вашей конкретной проблеме, которую вы хотите решить, но я лично считаю, что параллельная инфраструктура корпуса оболочки довольно привлекательна. Относительно легко настроить ipcluster на localhost (см. in the manual).

Вы можете обернуть функцию, которую вы хотите оценить в @parallel декоратора, например, и его оценки будут распределены между несколькими ядрами (см Quick and easy parallelism раздел руководства)

Смежные вопросы