Pull to refresh

Comments 14

Ну для asyncio исход немного предсказуем - оно всё-таки для параллельного выполнения операций ввода-вывода, а не для параллелизации вычислений.

Все же операции выполняются конкурентно, но не параллельно.

Ayncio и Threadind реализуют конкурентность. Они не паралелят задачи, а просто дают разные механизмы планирования: сопрограммы и переключение между потоками, но все это в одном пространстве памяти, соответственно они никак не могут дать какой-то прирост в счетных задачах.
Мультипроцессинг не обходит gil. Он запускает новые независимые процессы. Каждый из которых грузит все импорты, а для коммуникации между ними приходится использовать каналы и очереди. Соответственно он дает прирост за счет того что это N отдельных процессов, потребляющих в N раз больше ресурсов.
Есть еще один способ, субинтерпретаторы, но он до 3.13 остается экспериментальным

А субинтерпретаторы это что такое? Где почитать можно ?

По осям графиков попугаи в секунду?

Да, непонятно, что же по осям. Нужно подписать оси. И сделать заголовки у графиков. И пояснить, больше - это лучше или больше - это хуже.

А какие названия у осей в графиках? За что отвечает каждая ось?

Threading вполне себе нормально использовать для блокирующих операций, вроде работы с файлами.

Так то по парадигме для io-bound операций нужно использовать асинхронность, а вот для cpu-bound - многопоточность.

2 из 3 библиотеки для работы на 1 ядре процессора, и автор проверяет их на CPU-bound задаче... мда
Так еще и орфографические ошибки тут и там в тексте. Куда смотрят редакторы, когда такое пускают в свет?! Хабр скатился

Предлагаю вам указать на ошибки, что бы я их исправил. А так же написать свою статью или хотя бы описать здесь, простым языком что и как нужно использовать правильно по вашему мнению

Не много ли на себя берете?! Чтобы кто-то лично вам пояснял

Интернет открываете - и полетели! Материалов много, всё вышеперечисленное гуглится за 5 минут. А то, что вы понаписали тут - бред собачий! Вам бы для начала подучиться

А вообще если я правильно понял, какие тут производятся вычисления, тут бы Numpy при правильном применении побил бы всех остальных с разгромным счётом.

Немного замечаний к оформлению и содержанию:

Сперва пишут краткое содержание, метод исследования, детали исследования и результаты.

Легенду (mp_2, async_6 и т.д.) , нужно давать сразу или до как появляется первый график, а еще лучше этот текст в самом графике. Картинка должна быть читаема без объяснения.

По содержанию я бы добавил пример кода вызова для каждого из случаев.

Еще я бы привел такую же статистику с использованием I/O операций, так как это главная причина работы с threading в python, ну и numpy так как библиотека работает иначе.

Sign up to leave a comment.

Articles