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

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

21.07.2022, 07:52. Показов 21674. Ответов 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
12.08.2022, 11:41
Студворк — интернет-сервис помощи студентам

Не по теме:

Гугл перевод :)

0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
12.08.2022, 12:00  [ТС]
По ссылке это, где подзаголовок "Eager compilation".
0
Модератор
Эксперт Python
 Аватар для Fudthhh
2696 / 1602 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
12.08.2022, 13:08
Цитата Сообщение от supmener Посмотреть сообщение
Можно ли придумать другой пример, более понятный для меня?
То есть сложение двух чисел для тебя лютый хардкор?
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
12.08.2022, 15:04  [ТС]
Не смог пока разобраться в описании к примерам.
0
282 / 485 / 12
Регистрация: 21.06.2019
Сообщений: 3,020
12.08.2022, 15:50
Цитата Сообщение от supmener Посмотреть сообщение
Не смог пока разобраться в описании к примерам.
Что непонятного? Сигнатура функции описывает типы аргументов и возвращаемого значения, с которыми она работает. Если не указан тип возвращаемого значения, нумба его придумает за вас.

supmener, вот серьезно, зачем вы этой фигней занимаетесь? Беретесь за задачи, в которых не понимаете ровным счетом ничего. В чем смысл? Даже если вам сейчас по пальцам объяснят, вы же все равно не поймете и забудете объяснение завтра же. Потому что у вас банально нет базовых знаний, чтобы это понять. Вам уже только ленивый на форуме не сказал - надо начинать учиться с основ, а не по рандомным статьям, которые вы можете нагуглить по теме программирования.
То чем вы занимаетесь - это пустая трата времени. Это у вас хобби такое - копаться в абсолютно непонятных вещах без какого либо профита.
3
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
12.08.2022, 16:04  [ТС]
А базовые знания можно получить, читая литературу не по Пайтон, а по другим языкам программирования?
0
282 / 485 / 12
Регистрация: 21.06.2019
Сообщений: 3,020
12.08.2022, 16:12
Цитата Сообщение от supmener Посмотреть сообщение
А базовые знания можно получить, читая литературу не по Пайтон, а по другим языкам программирования?
Можно.
1
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
12.08.2022, 16:26  [ТС]
А Вы базовые знания приобрели, когда что изучали?
0
12.08.2022, 16:29

Не по теме:

Можно на форуме как-то пометить тему для игнорирования? Спрашиваю для друга!

0
12.08.2022, 16:44

Не по теме:

Jabbson, юзерскриптом можно

0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
12.08.2022, 17:13
Кликните здесь для просмотра всего текста

Не по теме:

Jabbson, ага так и поверили -мопед не мой)) интересно конечно почему он так себя ведет, чисто из психиатрически-медицинского интереса... Десять лет на форуме, пару лет в теме питона, мне бы просто стыдно стало.

1
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
13.08.2022, 08:19  [ТС]
Здесь ссылки на русском на разделы официальной документации
https://ru.quish.tv/numba-make... 00x-faster
которые могут быть очень полезны для обучения работе с Numba.
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
13.08.2022, 10:20
98% никогда не понадобится нумба
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
13.08.2022, 10:23
Welemir1, подтверждаю, если нужен именно питон и не хватает скорости numpy, то всегда можно написать модуль для питона. Да хоть на расте.
1
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
13.08.2022, 11:40  [ТС]
Цитата Сообщение от Рыжий Лис Посмотреть сообщение
и не хватает скорости numpy,
На числах разве не с приемлемой скоростью работает с Numba?

Добавлено через 8 минут
Совет конечно полезный с учетом того, что не все в Numpy поддерживается.

Добавлено через 1 минуту
Ускоряем Pandas.
https://pandas.pydata.org/pand... gperf.html
https://tedboy.github.io/panda... gperf.html

Добавлено через 47 минут
Ускоряем Tensorflow
https://www.tensorflow.org/xla
0
5042 / 1069 / 149
Регистрация: 29.01.2013
Сообщений: 6,243
13.08.2022, 11:52
Да когда вы уже поймёте, что не надо ничего ускорять на тех задачах, которые вы на форме ставили? ускорение и оптимизация нужны только тогда, когда есть сложные вычисления (формула преобразования занимает не менее листа в обычной тетради), или данных действительно много. От 500 000 записей в датасете. Во всех остальных случаях дешевле не ускорять.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
13.08.2022, 12:09  [ТС]
Хочу уметь писать код с учетом масштабируемости.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
13.08.2022, 12:12
Сначала научись без учета вообще чего-либо
2
5042 / 1069 / 149
Регистрация: 29.01.2013
Сообщений: 6,243
13.08.2022, 12:19
Цитата Сообщение от supmener Посмотреть сообщение
с учетом масштабируемости
масштабируемость вообще никак не пересекается с ускорением. Вот просто никак.
1
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
13.08.2022, 12:33
Цитата Сообщение от Alli_Lupin Посмотреть сообщение
масштабируемость вообще никак не пересекается с ускорением. Вот просто никак.
Может, я не понимаю термин "масштабируемость", но есть вертикально и горизонтальное масштабирование.

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

Горизонтальное: распараллеливание за счёт увеличения числа ядер процессоров/числа процессоров/машин/нод.

Второе более проще и более сложно одновременно, так как уже начинаются самые настоящие распределённые вычисления. С различной степенью децентрализации.

Но общую идею я поддерживаю: любимый код - домашнего питомца - можно лелеять и тратить время и усилия, чтобы он работал быстрее, но на проде неработающий код пристреливают, как скот.
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.08.2022, 12:33
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
200
Ответ Создать тему
Новые блоги и статьи
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru