Запитання з тегом «multiprocessing»

Багатопроцесорна робота - це використання двох або більше центральних процесорних блоків (ЦП) в межах однієї комп'ютерної системи. Відповідні деталі щодо впровадження та використання залежать від операційної системи та мови програмування. Тому завжди використовуйте теги як для ОС, так і для мови під час використання цього тегу.

5
Використовуйте 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 import Process def say_hello(name='world'): print …

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')) Я завантажую в пам'ять якийсь …

4
багатопроцесорність проти багатопоточності проти asyncio в Python 3
Я виявив, що в Python 3.4 існує декілька різних бібліотек для багатопроцесорної обробки / потокової роботи: багатопроцесорність проти потоків проти asyncio . Але я не знаю, який із них використовувати, чи є «рекомендованим». Вони роблять одне і те ж, або відрізняються? Якщо так, який для чого використовується? Я хочу написати …

8
Багатопроцесорна обробка: використовуйте tqdm для відображення індикатора прогресу
Щоб зробити мій код більш "пітонічним" та швидшим, я використовую "багатопроцесорну обробку" та функцію map, щоб надіслати його a) функцію та b) діапазон ітерацій. Імплантоване рішення (тобто виклик tqdm безпосередньо в діапазоні tqdm.tqdm (діапазон (0, 30)) не працює з багатопроцесорною обробкою (як сформульовано в коді нижче). Рядок прогресу відображається від …

7
Пул процесів Python недемонічний?
Чи можна було б створити пул пітонів, який не є демонічним? Я хочу, щоб пул міг викликати функцію, яка має інший пул всередині. Я хочу цього, оскільки процеси deamon не можуть створити процес. Зокрема, це призведе до помилки: AssertionError: daemonic processes are not allowed to have children Наприклад, розглянемо сценарій, …

9
Показати хід виклику багатопроцесорного пулу Python imap_unordered?
У мене є сценарій, який успішно виконує набір завдань багатопроцесорного пулу із 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 секунд, і я хотів би мати …

6
Як використовувати багатопроцесорну чергу в Python?
Я маю багато проблем, намагаючись зрозуміти, як працює багатопроцесорна черга на python і як її реалізувати. Скажімо, у мене є два модулі python, які отримують доступ до даних із спільного файлу, давайте назвемо ці два модулі програмою запису та зчитування. Мій план полягає в тому, щоб і читач, і письменник …

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

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

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

6
Спільне використання великого масиву Numpy для читання між багатопроцесорними процесами
У мене є 60 Гб масиву SciPy (матриця), я повинен ділитися між 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об'єкт багатопроцесорної обробки, який я адаптував з робочих прикладів (і вже працював для мене для іншої частини мого проекту). Я наткнувся на повідомлення про помилку, яке мені було важко …

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

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

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.