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

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

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

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

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

8
многопроцессорность: совместное использование большого объекта только для чтения между процессами?
Дочерние процессы порождены через многопроцессорные общие объекты, созданные ранее в программе? У меня следующая установка: 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 = marshal.load('file.bin') pool = Pool(processes=4) print pool.map(do_some_processing, glob.glob('*.data')) Я загружаю в память какой-то большой объект, а затем создаю …

8
Многопроцессорность: используйте tqdm для отображения индикатора выполнения
Чтобы сделать мой код более «питоническим» и более быстрым, я использую «многопроцессорность» и функцию карты, чтобы отправить ему а) функцию и б) диапазон итераций. Имплантированное решение (то есть вызов tqdm непосредственно в диапазоне tqdm.tqdm (диапазон (0, 30)) не работает с многопроцессорной обработкой (как сформулировано в приведенном ниже коде). Индикатор выполнения …

8
Python Process Pool недемонический?
Можно ли создать пул Python, который не является демоническим? Я хочу, чтобы пул мог вызывать функцию, внутри которой есть другой пул. Я хочу этого, потому что процессы deamon не могут создавать процесс. В частности, это вызовет ошибку: AssertionError: daemonic processes are not allowed to have children Например, рассмотрим сценарий, в …

9
Показать ход выполнения вызова imap_unordered для многопроцессорного пула Python?
У меня есть сценарий, который успешно выполняет набор задач многопроцессорного пула с imap_unordered()вызовом: p = multiprocessing.Pool() rs = p.imap_unordered(do_work, xrange(num_tasks)) p.close() # No more work p.join() # Wait for completion Однако у меня num_tasksоколо 250 000, поэтому join()основной поток блокируется на 10 секунд или около того, и я хотел бы …

2
Совместное использование очереди результатов между несколькими процессами
В документации к multiprocessingмодулю показано, как передать очередь процессу, запущенному с multiprocessing.Process. Но как я могу разделить очередь с запущенными асинхронными рабочими процессами apply_async? Мне не нужно динамическое объединение или что-то еще, просто способ для рабочих (многократно) сообщать о своих результатах обратно на базу. import multiprocessing def worker(name, que): que.put("%d …

6
Как использовать многопроцессорную очередь в Python?
Мне очень сложно понять, как многопроцессорная очередь работает на Python и как ее реализовать. Допустим, у меня есть два модуля Python, которые обращаются к данным из общего файла, назовем эти два модуля писателем и читателем. Мой план состоит в том, чтобы и читатель, и писатель помещали запросы в две отдельные …

5
Мертвый простой пример использования многопроцессорной очереди, пула и блокировки
Я попытался прочитать документацию на http://docs.python.org/dev/library/multiprocessing.html, но все еще борюсь с многопроцессорной обработкой Queue, Pool и Locking. А пока мне удалось построить пример ниже. Что касается очереди и пула, я не уверен, правильно ли я понял эту концепцию, поэтому поправьте меня, если я ошибаюсь. Я пытаюсь обработать 2 запроса за …

1
Эффективное применение функции к сгруппированному фрейму данных pandas параллельно
Мне часто нужно применить функцию к очень большим группам DataFrame(смешанных типов данных), и я хотел бы использовать преимущества нескольких ядер. Я могу создать итератор из групп и использовать модуль многопроцессорности, но это неэффективно, потому что каждая группа и результаты функции должны быть обработаны для обмена сообщениями между процессами. Есть ли …

6
Совместное использование большого массива Numpy, доступного только для чтения, между многопроцессорными процессами
У меня есть массив SciPy (матрица) объемом 60 ГБ, который я должен использовать для более чем 5 multiprocessing Processобъектов. Я видел numpy-sharedmem и читал это обсуждение в списке SciPy. Кажется, есть два подхода - numpy-sharedmemи использование a, multiprocessing.RawArray()и сопоставление NumPy dtypes с ctypes. numpy-sharedmemКажется , это верный путь, но я …

4
Как устранить ошибку «AttributeError: __exit__» в многопроцессорной обработке в Python?
Я попытался переписать код чтения csv, чтобы иметь возможность запускать его на нескольких ядрах в Python 3.2.2. Я пробовал использовать Poolобъект многопроцессорности, который адаптировал из рабочих примеров (и уже работал у меня для другой части моего проекта). Я столкнулся с сообщением об ошибке, которое было трудно расшифровать и устранить. Ошибка: …

9
Многопроцессорность и соединения с базой данных Django
Задний план: Я работаю над проектом, который использует Django с базой данных Postgres. Мы также используем mod_wsgi в случае, если это имеет значение, так как некоторые из моих поисковых запросов упоминали об этом. При отправке веб-формы представление Django запускает работу, которая займет значительное количество времени (больше, чем хотелось бы ждать …

3
Многопроцессорность Python: понимание логики `chunksize`
Какие факторы определяют оптимальный chunksizeаргумент в пользу таких методов multiprocessing.Pool.map()? .map()Похоже, что этот метод использует произвольную эвристику для размера фрагмента по умолчанию (поясняется ниже); что мотивирует этот выбор и существует ли более продуманный подход, основанный на какой-либо конкретной ситуации / настройке? Пример - скажи, что я: Пропускание iterableна .map()что ~ …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.