Форум сайта python.su
Скрипт 400+ потоков. Жрет ~50% CPU.
Почему?
Он же многопоточный, почему не сотню? Ресурс же простаивает, жалко ((
Офлайн
1. если поиграться с nice?
2. как было определено, что узкое горлышко - процессор, и было ли вообще определено?
Офлайн
adan
1) винда
Изменение приоритетап не помогло: было ~45-50, стало 50-50
2) Ибо жрет проц по максимуму. Да и из специфика задачи тоже выходит, ибо много читает и пишет в sqlite.
Офлайн
Ибо GIL
400 потоков - глупо (хотя раньше сам таким был)
Офлайн
> Ибо GIL
Разве он действует на сишные модули? Типа работы с сетью и БД?
> 400 потоков - глупо (хотя раньше сам таким был)
У меня идет работа с сетью.
Офлайн
вот и делай работу с сетью асинхронно, раз такое число тредов надо, но это уже сложнее. Или multiprocessing и создавай ещё пару форков
Офлайн