Вопросы с тегом «multiprocessing»

Многопроцессорность - это использование двух или более центральных процессоров (ЦП) в одной компьютерной системе. Соответствующие детали реализации и использования зависят от операционной системы и языка программирования. Поэтому при использовании этого тега всегда добавляйте теги как для ОС, так и для языка.

536
Python многопроцессорный pool.map для нескольких аргументов

В многопроцессорной библиотеке Python есть вариант pool.map, который поддерживает несколько аргументов? text = "test" def harvester(text, case): X = case[0] text+ str(X) if __name__ == '__main__': pool = multiprocessing.Pool(processes=6) case = RAW_DATASET pool.map(harvester(text,case),case, 1)...

245
Многопроцессорная обработка Python PicklingError: Can't pickle <type 'function'>

Мне жаль, что я не могу воспроизвести ошибку на более простом примере, а мой код слишком сложен для публикации. Если я запускаю программу в оболочке IPython вместо обычного Python, все работает хорошо. Я посмотрел некоторые предыдущие заметки по этой проблеме. Все они были вызваны использованием...

239
Как мне войти при использовании многопроцессорной обработки в Python?

Прямо сейчас у меня есть центральный модуль в платформе, которая порождает несколько процессов, используя multiprocessingмодуль Python 2.6 . Поскольку он использует multiprocessing, существует журнал, поддерживающий многопроцессорность на уровне модуля LOG = multiprocessing.get_logger(). Согласно...

218
Невозможно выбрать <type 'instancemethod'> при использовании многопроцессорной обработки Pool.map ()

Я пытаюсь использовать multiprocessing«s Pool.map()функцию , чтобы разделить из работы одновременно. Когда я использую следующий код, он работает нормально: import multiprocessing def f(x): return x*x def go(): pool = multiprocessing.Pool(processes=4) print pool.map(f, range(10)) if __name__==...

190
Как я могу восстановить возвращаемое значение функции, переданной multiprocessing.Process?

В приведенном ниже примере кода я хотел бы восстановить возвращаемое значение функции worker. Как я могу сделать это? Где хранится это значение? Пример кода: import multiprocessing def worker(procnum): '''worker function''' print str(procnum) + ' represent!' return procnum if __name__ ==...

184
multiprocessing.Pool: В чем разница между map_async и imap?

Я пытаюсь научиться использовать multiprocessingпакет Python , но я не понимаю разницу между map_asyncи imap. Я заметил, что оба map_asyncи imapвыполняются асинхронно. Так, когда я должен использовать один по другому? И как я должен получить результат, возвращенный map_async? Должен ли я...

180
Многопроцессорность: как использовать Pool.map для функции, определенной в классе?

Когда я запускаю что-то вроде: from multiprocessing import Pool p = Pool(5) def f(x): return x*x p.map(f, [1,2,3]) это работает отлично. Однако, помещая это как функцию класса: class calculate(object): def run(self): def f(x): return x*x p = Pool() return p.map(f, [1,2,3]) cl = calculate() print...

151
Многопроцессорная обработка - труба против очереди

Каковы принципиальные различия между очередями и каналами в многопроцессорном пакете Python ? В каких сценариях следует выбирать один над другим? Когда выгодно использовать Pipe()? Когда выгодно использовать...

148
Concurrent.futures против многопроцессорной обработки в Python 3

В Python 3.2 было представлено Concurrent Futures , представляющее собой сложную комбинацию старых потоковых и многопроцессорных модулей. Каковы преимущества и недостатки использования этого для задач, связанных с ЦП, по сравнению со старым многопроцессорным модулем? Эта статья предполагает, что с...

141
В чем различия между многопоточными и многопроцессорными модулями?

Я учусь , как использовать threadingи те multiprocessingмодули в Python для выполнения определенных операций параллельно и ускорить свой код. Я нахожу это трудным (возможно, потому что у меня нет никакого теоретического фона об этом), чтобы понять, в чем разница между threading.Thread()объектом и...

136
Прерывания клавиатуры с помощью многопроцессорного пула Python

Как мне обработать события KeyboardInterrupt с помощью многопроцессорных пулов Python? Вот простой пример: from multiprocessing import Pool from time import sleep from sys import exit def slowly_square(i): sleep(1) return i*i def go(): pool = Pool(8) try: results = pool.map(slowly_square,...

129
Почему многопроцессорность использует только одно ядро ​​после импорта numpy?

Я не уверен, считается ли это проблемой ОС, но я подумал, что спрошу здесь, если у кого-то есть какое-то представление о вещах, связанных с Python. Я пытался распараллелить forцикл joblib, нагружающий ЦП , но обнаружил, что вместо того, чтобы каждый рабочий процесс был назначен другому ядру, я...

124
Объекты с общей памятью в многопроцессорной обработке

Предположим, у меня есть большой массив numpy в памяти, у меня есть функция, funcкоторая принимает этот гигантский массив в качестве входных данных (вместе с некоторыми другими параметрами). funcс разными параметрами можно запускать параллельно. Например: def func(arr, param): # do stuff to arr,...

124
RuntimeError в Windows при попытке многопроцессорности на Python

Я пробую свою самую первую формальную программу Python с использованием потоковой и многопроцессорной обработки на машине с Windows. Однако я не могу запустить процессы, а python выдает следующее сообщение. Дело в том, что я не запускаю свои потоки в основном модуле. Потоки обрабатываются в...

114
многопроцессорность против многопоточности против asyncio в Python 3

Я обнаружил, что в Python 3.4 есть несколько разных библиотек для многопроцессорности / многопоточности: многопроцессорность vs многопоточность vs asyncio . Но я не знаю, какой из них использовать, или какой из них «рекомендуется». Они делают то же самое или разные? Если да, то какой для чего? Я...

113
многопроцессорность: как разделить dict между несколькими процессами?

Программа, которая создает несколько процессов, работающих в очереди с возможностью присоединения Q, и может в конечном итоге управлять глобальным словарем Dдля сохранения результатов. (поэтому каждый дочерний процесс может использовать Dдля хранения своего результата, а также видеть, какие...

112
Используйте массив numpy в общей памяти для многопроцессорности

Я хотел бы использовать массив numpy в общей памяти для использования с модулем многопроцессорности. Сложность состоит в том, чтобы использовать его как массив numpy, а не только как массив ctypes. from multiprocessing import Process, Array import scipy def f(a): a[0] = -a[0] if __name__ ==...

110
Что именно выполняет метод .join () модуля многопроцессорной обработки Python?

Изучая многопроцессорность Python (из статьи PMOTW ), я хотел бы получить некоторые разъяснения о том, что именно join()делает этот метод. В старом руководстве от 2008 года говорится, что без p.join()вызова в приведенном ниже коде «дочерний процесс будет бездействовать и не завершаться, становясь...

107
многопроцессорность: совместное использование большого объекта только для чтения между процессами?

Дочерние процессы порождены через многопроцессорные общие объекты, созданные ранее в программе? У меня следующая установка: do_some_processing(filename): for line in file(filename): if line.split(',')[0] in big_lookup_object: # something here if __name__ == '__main__': big_lookup_object =...