|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|||
Увеличиваем скорость Python и уменьшаем потребление памяти21.07.2022, 07:52. Показов 22934. Ответов 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
======================================== ====== https://github.com/pyston/pyston/releases https://numba.pydata.org/numba... guide.html https://downloads.python.org/pypy/ https://cython.org/
0
|
|||
| 21.07.2022, 07:52 | |
|
Ответы с готовыми решениями:
281
Убираем циклы, увеличиваем скорость! +тесты Потребление памяти Потребление памяти |
| 01.08.2022, 18:19 | ||
|
Не по теме: Если отладка - это процесс удаления ошибок из кода, тогда программирование - это процесс добавления ошибок.
0
|
||
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 01.08.2022, 18:27 [ТС] | |
|
Если Вы пишете for в циклах, советуют заменить на while, если важна скорость кода. Что Вы думаете по этому поводу?
0
|
|
|
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
|
|
| 01.08.2022, 18:33 | |
|
Ясно, значит не исчерпана, продолжаем тратить своё и чужое время.
0
|
|
|
14364 / 9465 / 1360
Регистрация: 21.01.2016
Сообщений: 35,689
|
|
| 02.08.2022, 07:19 | |
|
supmener, а вы возьмите, да напишите два примера с for и while. И замерьте разницу.
Что вы думаете по этому поводу? Или звиздеть не форуме - не мешки ворочать? Зачем что-то проверять на практике, когда можно воздух сотрясать, да?
2
|
|
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 02.08.2022, 07:28 [ТС] | |
|
Если правильно понял, for используется там, где скорость выполнения не так нужна, а важно показать более читаемый код.
0
|
|
|
282 / 485 / 12
Регистрация: 21.06.2019
Сообщений: 3,020
|
||
| 02.08.2022, 07:40 | ||
|
1
|
||
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 02.08.2022, 07:53 [ТС] | |
|
Имею в виду оптимизацию скорости выполнения кода в самом Пайтоне, а не в сравнении с другими языками.
0
|
|
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|||||||||||
| 02.08.2022, 11:01 [ТС] | |||||||||||
|
Постараюсь сейчас или сегодня написать.
Добавлено через 1 час 49 минут
0
|
|||||||||||
|
5044 / 1071 / 149
Регистрация: 29.01.2013
Сообщений: 6,257
|
|
| 02.08.2022, 11:16 | |
|
supmener, замечания:
1
|
|
|
14364 / 9465 / 1360
Регистрация: 21.01.2016
Сообщений: 35,689
|
|
| 02.08.2022, 11:28 | |
|
supmener, вы этим кодом тестируете производительность доступа к HDD\SDD, а не скорость работы операторов циклов.
3
|
|
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 02.08.2022, 11:29 [ТС] | |
|
from time import perf_counter
start = perf_counter() for i in range(100000000): a = 0 a = a + 1 end = perf_counter() print(end-start) # 7.589125200000126
0
|
|
|
14364 / 9465 / 1360
Регистрация: 21.01.2016
Сообщений: 35,689
|
||
| 02.08.2022, 11:30 | ||
for отношения оно не имеет.В результате имеем замеры от человека, который смутно представляет себе, что он замеряет и зачем...
0
|
||
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
||
| 02.08.2022, 11:35 [ТС] | ||
0
|
||
|
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
|
|
| 02.08.2022, 11:36 | |
|
supmener, иди в ассемблер, век воли не видать. Вот где вечно можно оптимизировать, рай, а не язык.
И скорость до небес, и места не занимает, и под любую архитектуру, и команд не так много, и лаконично! Загляденье!
0
|
|
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
||||||
| 02.08.2022, 11:43 [ТС] | ||||||
0
|
||||||
| 02.08.2022, 11:44 | |
|
Не по теме: iSmokeJC, и мы в ветке асма почти не мелькаем)))
0
|
|
| 02.08.2022, 11:47 | |
|
Не по теме: Alli_Lupin, именно!
0
|
|
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|||||||
| 02.08.2022, 13:23 [ТС] | |||||||
|
В интернете есть примеры, как декомпилировать код Пайтон, используя
Добавлено через 1 час 23 минуты Пока что полностью не понял, что является новым синтаксисом Cython. На этой странице https://cython.readthedocs.io/... asses.html для фрагментов кода по две кнопки, при нажатии на которые синтаксис меняется. Перевод https://cython.readthedocs.io/... /pure.html
0
|
|||||||
|
14364 / 9465 / 1360
Регистрация: 21.01.2016
Сообщений: 35,689
|
||
| 02.08.2022, 14:07 | ||
|
Писать быстрый код - скил, который приходит после скила "писать рабочий код". Это уже вопрос более тонкой настройки своей писанины. Вы же ещё не способны написать даже очень медленный код. И понимания того, что вы тут ссылками приводите у вас нет и не выработается без практики. Или вы решили, что если прикинетесь столбом, который не понимает слов и не слышит советов, то рано или поздно вы добьётесь успеха? Типа, если долго биться головой об пол, то будет толк?)
0
|
||
| 02.08.2022, 14:07 | |
|
Потребление памяти Потребление памяти Потребление памяти Потребление памяти Потребление памяти Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 14. Обновленная схема модели
anaschu 28.06.2026
ГЛОБАЛЬНАЯ ОПИСАТЕЛЬНАЯ СПЕЦИФИКАЦИЯ ЭКОСИСТЕМНОЙ МОДЕЛИ «SOIL CHEMISTRY & MYCORRHIZA 2. 0»
https:/ / ibb. co/ NnkGpfMd
Представленная интегрированная схема описывает непрерывную нелинейную. . .
|
сукцессия 13. Питон модель трехзонного мицелия, пока что в основном арбускулярного
anaschu 28.06.2026
## Разработка агентной модели микоризной сукцессии: от выявления артефактов к созданию комплексной системы
### Аннотация
Представлено исследование по разработке агентной модели микоризной. . .
|
сукцессия 12. краткий список проверок модели перед запуском.
anaschu 27.06.2026
Скрытые отказы в моделях систем динамики (SD-models) экологических систем: два случая из практики
Контекст
Разбирался прототип модели систем динамики (SD-модели) микоризной сукцессии: пять. . .
|
Сукцессия 11. Проверка орудий перед войной: разработка через тестирование
anaschu 27.06.2026
Как не дать модели соврать самой себе: проверки для симуляции микоризной сукцессии
Введение
Когда вы строите математическую модель живой системы — грибов, растений, почвы — главная опасность. . .
|
|
10 сукцессия. Питон код войны грибов и растений
anaschu 27.06.2026
import numpy as np
class PlantAgent:
def __init__(self, name, strategy, initial_biomass):
self. name = name
self. strategy = strategy # "greedy" (широколиственные) или. . .
|
сукцессия 9. Математика подлости: как растения предали грибных друзей
anaschu 27.06.2026
Статья 2. Глобальная фосфорная война: эволюционно-экономические механизмы распределения биомов Земли
Введение: Экологический рынок как игра с нулевой суммой
Традиционная экология долгое время. . .
|
сукцессия 8. Как я спорил с ИИ, которые - агенты растений и ненавистники грибов!
anaschu 27.06.2026
Статья 1. Хроники грибного восстания: как Сократов диалог разрушил академические догмы ИИ
Введение: Синдром «цифрового учебника»
Современные большие языковые модели (LLM) обладают колоссальным. . .
|
Главный вопрос моделирования сукцессии
anaschu 27.06.2026
главный вопрос.
Если эктомикориза лучше добывает недоступный фосфор. И ее масса максимальна из всех.
А широколиственный лес тоже имеет самую крутую биомассу.
То почему не возникло их симбиоза? Это. . .
|