С Новым годом! Форум программистов, компьютерный форум, киберфорум
Python: IDE, инструментарий
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.54/82: Рейтинг темы: голосов - 82, средняя оценка - 4.54
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753

Увеличиваем скорость Python и уменьшаем потребление памяти

21.07.2022, 07:52. Показов 20700. Ответов 281
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Если не учитывать, разные советы по увеличению скорости, например замена for на while, то предлагаю знающих людей высказаться, какая из библиотек для увеличения скорости выполнения кода им больше нравится или написать впечатления от тестирования какой-то из них. Также прошу посоветовать библиотеки по уменьшению расхода оперативной памяти, если они есть.

https://nuitka.net/posts/pytho... ndows.html
https://nuitka.net/doc/download.html
https://pypi.org/project/Nuitka/

https://github.com/Nuitka/Nuitka
Build it using
python -m nuitka hello.py
Note

This will prompt you to download a C caching tool (to speed up repeated compilation of generated C code) and a MinGW64 based C compiler unless you have a suitable MSVC installed. Say yes to both those questions.
Создайте его, используя
python -m nuitka hello.py
Примечание

Вам будет предложено загрузить инструмент кэширования C (для ускорения повторной компиляции сгенерированного кода C) и компилятор C на основе MinGW64, если у вас не установлен подходящий MSVC. Скажите «да» на оба этих вопроса.
Nuitka люди используют, чтобы делать exe из кода Пайтон.

======================================== ======

https://github.com/pyston/pyston/releases

https://numba.pydata.org/numba... guide.html

https://downloads.python.org/pypy/

https://cython.org/
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.07.2022, 07:52
Ответы с готовыми решениями:

Убираем циклы, увеличиваем скорость! +тесты
Уважаемые форумчане, предлагаю вашему вниманию небольшую сборку тестов, смотрим и используем более быстрые методы Module Module1 ...

Потребление памяти
Здравствуйте! Озадачился оптимизацией потребления памяти, поэтому подскажите, каким способом можно узнать сколько некоторые части кода...

Потребление памяти
Добрый день. У меня есть код, который реализует загрузку изображений в таблицу. Я сделал две версии: 1) простая асинхронная загрузка...

281
5031 / 1059 / 148
Регистрация: 29.01.2013
Сообщений: 6,197
30.07.2022, 17:02
Студворк — интернет-сервис помощи студентам
Судя по тому, что я такое первый раз слышу, то нет
0
282 / 485 / 12
Регистрация: 21.06.2019
Сообщений: 3,018
30.07.2022, 17:06
Цитата Сообщение от supmener Посмотреть сообщение
В каком случае на Пайтон в Вебе для работы сайта самый быстрый код будет на Sanic?
В том случае, если вы умеете писать на питоне в целом, и в вебе в частности.

Добавлено через 1 минуту
supmener, вы когда уже код писать начнете, кстати?
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753
30.07.2022, 17:19  [ТС]
Цитата Сообщение от Катафалк Посмотреть сообщение
вы когда уже код писать начнете, кстати?
Можно подумать, сейчас каждый день кодом не занимаюсь.

Какие, кроме Sanic, поддерживают async/await, uvloop, ujson?

Добавлено через 3 минуты
https://sanic.dev/
https://github.com/sanic-org/sanic
https://pypi.org/project/sanic/
0
155 / 120 / 38
Регистрация: 12.12.2013
Сообщений: 374
30.07.2022, 21:59
Цитата Сообщение от supmener Посмотреть сообщение
Какие, кроме Sanic, поддерживают async/await, uvloop, ujson?
А с синхронными фреймворками уже проблем нет? Flask, Django освоены на все 100?
1
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753
30.07.2022, 22:12  [ТС]
Не изучал их пока что. И не знаю, буду ли осваивать в будущем.

https://docs.djangoproject.com... ics/async/

https://flask.palletsprojects.... ync-await/
0
155 / 120 / 38
Регистрация: 12.12.2013
Сообщений: 374
30.07.2022, 22:24
Цитата Сообщение от supmener Посмотреть сообщение
Не изучал их пока что. И не знаю, буду ли осваивать в будущем.
То, что нужно осваивать написано на hh. Вот прямо сейчас там: 760 вакансий с django, 381 - Flask, 316 - Fastapi, 152 - aiohttp. И только 18 - Sanic (ну хоть вообще есть и то хорошо).
Вопрос о том, что надо учить, в свете этого риторический.
2
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753
31.07.2022, 06:28  [ТС]
Создание и быстрое уничтожение многочисленных объектов Regex — это очень затратный процесс, так как высоки издержки на создание объектов и компиляцию регулярных выражений. Для приложений, использующих большое количество разных регулярных выражений, производительность можно повысить путем вызова статических методов Regex и, возможно, путем увеличения размера кэша для регулярных выражений. https://docs.microsoft.com/ru-... xpressions
Как кэш скомпилированных регулярных выражений увеличить, если именно это имеется в виду?
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
31.07.2022, 06:32
.NET вот тут
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753
31.07.2022, 06:48  [ТС]
Тогда упомянем компиляцию регулярных выражений, которая в некоторых случаях может быть полезна для ускорения кода Пайтон.
0
Эксперт .NET
 Аватар для Usaga
14122 / 9339 / 1350
Регистрация: 21.01.2016
Сообщений: 35,085
31.07.2022, 08:59
supmener, какой ваш код на Питоне уже сейчас тормозит из-за регулярных выражений?
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
31.07.2022, 09:16
Цитата Сообщение от supmener Посмотреть сообщение
Можно подумать, сейчас каждый день кодом не занимаюсь.
не только подумать, можно быть уверенным! код покажите, в гите или тут на форуме

Добавлено через 38 секунд
Цитата Сообщение от supmener Посмотреть сообщение
И не знаю, буду ли осваивать в будущем.
я знаю -не будете. но темы создадите
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753
31.07.2022, 09:21  [ТС]
В качестве заметки для себя оставлю эти ссылки
https://pypi.org/project/Twisted/

https://pypi.org/project/gevent/
http://www.gevent.org/
https://github.com/gevent/gevent

https://pypi.org/project/tornado/

Добавлено через 1 минуту
Цитата Сообщение от Welemir1 Посмотреть сообщение
не только подумать, можно быть уверенным! код покажите, в гите или тут на форуме
Какой смысл показывать чужой код, по которому изучаю, как устроены программы?
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
31.07.2022, 09:33
Цитата Сообщение от supmener Посмотреть сообщение
Какой смысл показывать чужой код, по которому изучаю, как устроены программы?
Какой смысл изучать чужие программы и не писать собственные?
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753
31.07.2022, 09:39  [ТС]
Потому что плохо понимаю, как писать такие программы.
0
155 / 120 / 38
Регистрация: 12.12.2013
Сообщений: 374
31.07.2022, 09:40
Цитата Сообщение от supmener Посмотреть сообщение
В качестве заметки для себя оставлю эти ссылки

Какой смысл показывать чужой код, по которому изучаю, как устроены программы?
Tornado - 67 вакансий, Twisted - 9, gevent - 1. На эту единственную вакансию с gevent требуется Senior Python Developer на 7000 зелени. Но даже на эту вакансию без знания, цитирую, Flask + gevent + uwsgi, SqlAlchemy, PostgreSQL, Marshmallow, Celery, RabbitMQ, Redis, Custom REST API framework не возьмут. Скорее всего там пишут кастомный приватный фреймворк для своего продукта на основе этих технологий. Вот для этого и нужен gevent. Сам подумай, скоро ты будешь этой вакансии соответствовать? Ну, или скоро ли ты дойдешь до написания своего фреймворка?

По второму пункту - пишешь код и нет вопросов по нему? Предположу, что либо код в 3 строчки, либо ты - гений. Я тоже писал чужой код, но и ошибок там тоже много. И эти ошибки не нужно бросать (ну, не работает и хрен с ним), а подробно разбирать самому (желательно).
1
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
31.07.2022, 09:42
Цитата Сообщение от supmener Посмотреть сообщение
Потому что плохо понимаю,
и не поймешь никогда. Если ты не можешь закрутить винт, то как самолет не рассматривай - так же не сделаешь.
1
155 / 120 / 38
Регистрация: 12.12.2013
Сообщений: 374
31.07.2022, 09:46
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Какой смысл изучать чужие программы и не писать собственные?
Некоторый смысл есть. Если приходишь куда-то работать, то там чужой код. И обычно в нем требуют разбираться как в своем собственном.

Добавлено через 2 минуты
Цитата Сообщение от iSmokeJC Посмотреть сообщение
и не поймешь никогда. Если ты не можешь закрутить винт, то как самолет не рассматривай - так же не сделаешь.
Чел стремится и пытается. Даже несмотря на наш стеб. Так что можно респектом отметить.
Но, имхо, для него нужен хороший ментор и желательно с ремешком.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
31.07.2022, 09:47
Treasure Hunter, все верно. Но чтобы разобраться в чужом коде, необходимо хотя бы основы знать. А если ты не знаешь ничерта, то какой смысл на что-то смотреть? Полюбоваться?

Добавлено через 56 секунд
Цитата Сообщение от Treasure Hunter Посмотреть сообщение
Чел стремится и пытается.
Нет. Он стремится и не пытается. Вот такой парадокс
1
282 / 485 / 12
Регистрация: 21.06.2019
Сообщений: 3,018
31.07.2022, 09:51
Цитата Сообщение от supmener Посмотреть сообщение
Потому что плохо понимаю, как писать такие программы.
И никогда не поймете, если не начнете писать сами. Неужели это такая сложная мысль, что для того чтобы научиться какому-то навыку - нужно это делать самостоятельно, а не только смотреть, как делают другие?
Ну представьте например, что вы хотите научиться плавать. И вы для этого смотрите кучу видосов на ютубе с разными полезными упражнениями для пловцов. Потом пришли в бассейн, сели рядом на стульчик и смотрите, как люди плавают. Но сами в воду ни разу так и не зашли. Абсурд же? Почему вы считаете, что с программирвоанием не так?
Цитата Сообщение от Treasure Hunter Посмотреть сообщение
Некоторый смысл есть. Если приходишь куда-то работать, то там чужой код. И обычно в нем требуют разбираться как в своем собственном.
Это надо делать в дополнение к собственно практике программирвания, а не вместо. Иначе получается такой вот пловец на табуретке.
3
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
31.07.2022, 09:53
Катафалк, в точку!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.07.2022, 09:53
Помогаю со студенческими работами здесь

Потребление памяти
Подскажите, где можно посмотреть сколько памяти выделяет устройство под сторонние программы (например айпад1 - 80 мб)?

Потребление памяти
Добрый день. У меня есть программа, которая передает данные из StringGrida в таблицу SQL Server 2000. Используется ADOConnection,...

Потребление памяти
Приветствую всех! Прошу помощи в решении проблемы. Последнею неделю поигрывал в Subnautica и все было замечательно. После перерыва в пару...

Потребление памяти
В среднем, во сколько раз отличается потребление памяти у 32 и 64 битных версий явы? Используются Java EE, hibernate, spring...

Потребление памяти
Привет всем, подскажите парни.Это нормально? Мне кажется что то у меня большое потребление памяти.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
100
Ответ Создать тему
Новые блоги и статьи
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru