Высокопроизводительный Python — Micha Gorelick, Ian Ozsvald — обложка книги
464 страниц
Python
PDF
4.5

Высокопроизводительный Python

Оптимизация кода и ускорение вычислений

Автор:

Год:

Краткое содержимое:

Введение

Книга «High Performance Python» (в русском переводе — «Высокопроизводительный Python») от авторов Micha Gorelick и Ian Ozsvald — это практическое руководство по оптимизации кода на Python, вышедшее в 2020 году (второе издание). В мире, где Python часто критикуют за скорость, эта книга доказывает: с правильными инструментами и подходами Python может быть не просто удобным, но и быстрым. Объём — 464 страницы, что позволяет детально разобрать как фундаментальные концепции, так и продвинутые техники.

О чём книга

Книга посвящена повышению производительности Python-приложений. Авторы начинают с основ: как измерить скорость работы кода с помощью профилирования (cProfile, line_profiler, memory_profiler). Затем переходят к практическим методам ускорения: использование структур данных, векторизация с NumPy, компиляция с Cython и Numba, параллелизм и асинхронность (asyncio, multiprocessing, threading), работа с GPU (CUDA) и распределённые вычисления. Отдельное внимание уделено работе с большими данными и оптимизации ввода-вывода.

Для кого эта книга

Книга рассчитана на Python-разработчиков среднего и продвинутого уровня, которые уже знакомы с основами языка и хотят вывести свои проекты на новый уровень производительности. Она будет полезна:

  • Data Scientist и инженерам машинного обучения, работающим с большими объёмами данных;
  • Backend-разработчикам, создающим высоконагруженные сервисы;
  • Системным программистам, желающим оптимизировать узкие места в коде;
  • Студентам и исследователям, которым нужно ускорять вычисления.

Что узнает читатель

После прочтения читатель сможет:

  • Профилировать код и находить узкие места с помощью line_profiler, memory_profiler и flame graphs;
  • Эффективно использовать списки, словари, множества и другие структуры данных;
  • Применять NumPy для векторизации операций и ускорения в 10–100 раз;
  • Компилировать критичные участки кода с Cython и Numba;
  • Реализовывать многопоточность и многопроцессорность, избегая блокировок;
  • Использовать asyncio для асинхронного ввода-вывода;
  • Работать с GPU через CUDA (PyCUDA, Numba) для параллельных вычислений;
  • Оптимизировать работу с диском и сетью (буферизация, mmap, сжатие);
  • Проектировать распределённые системы с Dask и Spark.

Сильные стороны

Главное достоинство книги — практическая направленность. Каждая глава содержит реальные примеры, замеры производительности и сравнения подходов. Авторы не просто дают теорию, а показывают, как измерить эффект от оптимизации. Второе издание (2020) обновлено: добавлены разделы по asyncio, Numba, Dask, а также улучшены примеры для Python 3.8+. Книга написана живым языком, сложные концепции объясняются через метафоры и визуализации. Отдельно стоит отметить главу о профилировании — она даёт чёткую методологию, которую можно применить к любому проекту.

Кому рекомендуется

Рекомендую книгу всем, кто столкнулся с проблемами производительности в Python и хочет системно подойти к их решению. Она будет полезна как новичкам в оптимизации (благодаря вводным главам), так и опытным разработчикам, желающим освоить современные инструменты (Numba, Dask, asyncio). Если вы пишете на Python и задумываетесь о скорости — эта книга станет настольным справочником.

Рекомендаций