Дополнительно об анализе производительности Python

dopolnitelno ob analize proizvoditelnosti python Структуры данных

Два последних примечания, касающихся производительности. Несмотря на то, что абсолютные значения изменяются со временем, с появлением новых версий Python и компьютеров, на которых выполняется тестирование, относительные результаты остаются практически неизменными. То есть стек на основе кортежей побеждает при отсутствии операций обращения по индексу. Однако любые результаты измерения производительности в таком динамично развивающемся языке, как Python, могут измениться со временем, поэтому обязательно выполняйте подобные тесты у себя, чтобы получить более точные результаты.

Во-вторых, часто существует больше способов измерения производительности, чем простой хронометраж. Чтобы получить более полное представление, обращайтесь к описанию profile в руководстве по стандартной библиотеке (и его оптимизированной альтернативы cProfile). Профилировщики выполняют программный код Python, попутно собирают информацию о производительности и выводят отчет по завершении выполнения программного кода. Это наиболее надежный способ обнаружения узких мест в программном коде перед началом работ по оптимизации с применением других синтаксических конструкций, алгоритмов и структур данных или переноса части приложения на язык C.

Однако в случае простого измерения производительности наш модуль хронометража предоставляет все необходимые нам данные. Мы будем повторно использовать его для измерения более ощутимого повышения скорости при выполнении альтернативных реализаций множеств в следующем разделе.

Использованная литература:

Марк Лутц — Программирование на Python, 4-е издание, II том, 2011

Каталог сайтов Всего.ру
Оцените статью
Секреты программирования
Добавить комментарий