nerezus
Авг. 27, 2009 23:57:39
Скрипт 400+ потоков. Жрет ~50% CPU.
Почему?
Он же многопоточный, почему не сотню? Ресурс же простаивает, жалко ((
adan
Авг. 28, 2009 00:13:59
1. если поиграться с nice?
2. как было определено, что узкое горлышко - процессор, и было ли вообще определено?
nerezus
Авг. 28, 2009 00:17:19
adan
1) винда
Изменение приоритетап не помогло: было ~45-50, стало 50-50
2) Ибо жрет проц по максимуму. Да и из специфика задачи тоже выходит, ибо много читает и пишет в sqlite.
slav0nic
Авг. 28, 2009 00:19:02
Ибо GIL
400 потоков - глупо (хотя раньше сам таким был)
nerezus
Авг. 28, 2009 00:26:14
> Ибо GIL
Разве он действует на сишные модули? Типа работы с сетью и БД?
> 400 потоков - глупо (хотя раньше сам таким был)
У меня идет работа с сетью.
slav0nic
Авг. 28, 2009 16:05:19
вот и делай работу с сетью асинхронно, раз такое число тредов надо, но это уже сложнее. Или multiprocessing и создавай ещё пару форков