|
17 / 17 / 0
Регистрация: 26.02.2013
Сообщений: 497
|
|
3.7 Процессы или потоки ?17.02.2018, 01:52. Показов 5840. Ответов 25
Метки нет (Все метки)
Создал с помощью мультипроцессинга два процесса заполняющие некий сайт параллельно (webdriver), все работает. Но возникли вопросы:
1) У меня старый i7 860 - сколько подобных процессов есть смысл запускать ? Есть вообще разница, сколько ядер у процессора ? 2) В чем отличие процессов от потоков из threading ? Спасибо.
0
|
|
| 17.02.2018, 01:52 | |
|
Ответы с готовыми решениями:
25
Потоки или процессы для многочисленных сессий Потоки/процессы
|
|
395 / 123 / 48
Регистрация: 26.10.2013
Сообщений: 734
|
|
| 17.02.2018, 12:31 | |
|
0
|
|
|
17 / 17 / 0
Регистрация: 26.02.2013
Сообщений: 497
|
|
| 17.02.2018, 13:10 [ТС] | |
|
Кроме большой статьи на английском там нет ничего, а статья не про то...
0
|
|
|
395 / 123 / 48
Регистрация: 26.10.2013
Сообщений: 734
|
|
| 17.02.2018, 13:23 | |
|
ну значит ты плохо смотрел)
0
|
|
|
Модератор
3134 / 2281 / 469
Регистрация: 26.03.2015
Сообщений: 8,878
|
|
| 18.02.2018, 07:33 | |
|
0
|
|
|
17 / 17 / 0
Регистрация: 26.02.2013
Сообщений: 497
|
|
| 18.02.2018, 12:47 [ТС] | |
|
Открывается окно броузера (webdriver) логинится и пасвордится в нужную часть сайта, загружается много цифр из эксел и забивается все это в кучу инпутов. В два процесса получается почти вдвое быстрее...
0
|
|
|
Модератор
3134 / 2281 / 469
Регистрация: 26.03.2015
Сообщений: 8,878
|
||||
| 18.02.2018, 14:06 | ||||
|
0
|
||||
|
17 / 17 / 0
Регистрация: 26.02.2013
Сообщений: 497
|
|
| 18.02.2018, 19:26 [ТС] | |
|
Сейчас используется модуль multiprocessing -это процессы, вроде. Из эксэл данные грузятся в основном процессе и только потом создаются двое детишек и им скармливаются два куска данных как параметры (с очередью пока разбираюсь). В принципе грузить из эксэл данные параллельно не нужно...пока. А, кстати, можно ли используя com-соединение через pyWin32 (или как то так называется библиотека)? Измениться что-нибуль если мне вместо multiprocessing -а использовать threading медленей или быстрее станут работать мои два детишки- вебдрайвер.броузеры ?
0
|
|
|
Модератор
3134 / 2281 / 469
Регистрация: 26.03.2015
Сообщений: 8,878
|
|||||||
| 19.02.2018, 10:10 | |||||||
Создание процесса и обмен данными между процессами - это затратные задачи. Обычно это не окупается, если не позволяет привлечь дополнительные ресурсы (например, процессы выполняются на разных компьютерах). На одном компьютере для параллельных вычислений обычно используют потоки. Ваша задача разбивается на три подзадачи: чтение файла, формирование запроса и отправку запроса. На время отправки/обработки запроса Вы повлиять не можете. Если файл очень большой, то чтение файла можно ускорить, если не читать его в память целиком. Если для формирования запроса требуются сложные вычисления, то их можно ускорить, выполняя в разных потоках (при условии, что вычисления можно распараллелить). Для Вашего процессора - наверное, оптимально 8 потоков.
0
|
|||||||
| 19.02.2018, 12:14 | |
|
Не по теме: ой...
0
|
|
|
17 / 17 / 0
Регистрация: 26.02.2013
Сообщений: 497
|
|
| 19.02.2018, 13:10 [ТС] | |
|
Т.е. если перейду с процессов на потоки у меня также будут открываться окна броузеров без проблем ? Или потоки больше для вычислений ?
Добавлено через 37 секунд pool не использую... Добавлено через 40 секунд и Винде появляются новые процессы Питон...
0
|
|
|
395 / 123 / 48
Регистрация: 26.10.2013
Сообщений: 734
|
|
| 19.02.2018, 13:16 | |
|
Может ты subprocess используешь? не важно потоки или процессы. новые окна веб драйвера будут появляться)
0
|
|
|
17 / 17 / 0
Регистрация: 26.02.2013
Сообщений: 497
|
|
| 19.02.2018, 15:04 [ТС] | |
|
нет использую мултипроцессинг и его процессы. Значит с практической точки зрения, что потоки что процессы, в моем случае - без разницы ?
0
|
|
|
395 / 123 / 48
Регистрация: 26.10.2013
Сообщений: 734
|
|
| 19.02.2018, 16:03 | |
|
вообще разница есть всегда. процессы дольше стартуют, больше жрут памяти, больше грузят CPU. Ты попробуй и то и то. И посмотри как тебе лучше.
0
|
|
|
Модератор
3134 / 2281 / 469
Регистрация: 26.03.2015
Сообщений: 8,878
|
|||||||
| 19.02.2018, 17:55 | |||||||
0
|
|||||||
| 19.02.2018, 19:26 | |
|
Не по теме: Shamil1, блин, вот я знал же)) хотел даже сказать))
0
|
|
|
17 / 17 / 0
Регистрация: 26.02.2013
Сообщений: 497
|
|
| 19.02.2018, 19:30 [ТС] | |
|
Pool это "одноразовые" процессы -типа для быстрой отработки и закрытия - чем они лучше потоков, так и не понял.
Про ресурсы/загрузку процессов/потоков прочитал - но, если все так просто, зачем тогда вообще кому-то может понадобится использовать процессы вместо потоков ? У меня опыта нет - поэтому выбрал процессы, а времени разбираться с потоками нет пока...
0
|
|
|
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
|
||
| 19.02.2018, 19:35 | ||
|
Может все-таки разберешься сначала, а то потом вылезут проблемы
0
|
||
|
395 / 123 / 48
Регистрация: 26.10.2013
Сообщений: 734
|
|
| 19.02.2018, 19:35 | |
|
Процессы частично обходят GIL, когда это оправдано то используют процессы.
0
|
|
|
17 / 17 / 0
Регистрация: 26.02.2013
Сообщений: 497
|
|
| 19.02.2018, 22:03 [ТС] | |
|
Напишу проще, ЗАЧЕМ используют процессы если есть ПОТОКИ ?
0
|
|
| 19.02.2018, 22:03 | |
|
Помогаю со студенческими работами здесь
20
процессы и потоки! Процессы и потоки Процессы и потоки? Процессы и потоки в Qt Потоки и процессы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|