Форум сайта python.su
0
Сталкивались вы с задачами, когда скорости Python не хватает и что делать в таких случаях?
Офлайн
253
Не сталкивался. Обычно люди представляют какой инструмент для чего использовать.
ynosА как вы себе определяете “не хватает”?? Я одним способом. Решение на питоне не удовлетворяет требованиям технического задания. И способ борьбы соответствующий - не надо писать дурацких ТЗ. когда договор заключаете :).
скорости Python не хватает
Отредактировано doza_and (Май 5, 2020 21:53:13)
Офлайн
857
ynosЭто наступало только при неверном алгоритме, реализованном на питоне. То есть это наступало в нескольких случаях: либо это был квадратичный алгоритм на немаленьких данных, когда можно было сделать логарифмичный и вполне быстрый; либо это была параллельная программа, неправильно спроектированная, и ожидалось наличие каких-то потоков, а их там в действительности не оказывалось; либо это был зависон в цикле, причём не бесконечный, а такой, с лишними неучтёнными петлями; либо это было чтение устройств, которые сами долго не отвечали, и питон просто ждал ответа от них. С питоном самим проблем не было, скорость у него не высокая, но нормальная.
Сталкивались вы с задачами, когда скорости Python не хватает
Отредактировано py.user.next (Май 6, 2020 00:07:22)
Офлайн
568
Так точно, сталкивались.
ynosНу вариантов то всего три:
что делать в таких случаях
Офлайн
294
ну тут завист от того что для вас “скорости Python не хватает”, иногда хватает просто поменять алгоритм, иногда нужно переписать код, в пайтоне много неочевидных вещей которые существенно влияют на производительность, в отдельных слкчаях можно раз в сто усторить выполнение, пример: https://tproger.ru/articles/what-are-python-speed-limits/
а иногда нужно перосто переписать на более низкоуровневом ЯП.
[code python][/code]
Отредактировано PEHDOM (Май 6, 2020 17:10:33)
Офлайн
1
Не сталкивался с проблемой недостаточной скоростью выполнения. Думаю изменение самого алгоритма, может ускорить выполнение скрипта. Хотя, было дело с Unwired Device, где была связка Lora + Tyzen + python/js/html - было очень много данных, приходящих с парса (около 30 девайсов) и он некоторые данные с Json пропускал.
Офлайн