Конференция завершена. Ждем вас на Russian Python Week в следующий раз!

Нестандартные способы манипуляции памятью в Python Офлайн 2021

Программный комитет ещё не принял решения по этому докладу
Тезисы

Делать research и обрабатывать большие массивы данных на Python c одной стороны удобно, но с другой стороны из опыта отправки pipeline’ов в продакшн следует, что возникает целый ряд проблем:
* потребление сотни гигабайт RAM из-за некомпактного хранения данных в памяти;
* длительная обработка больших коллекций;
* низкая скорость загрузки и сохранения больших коллекций в память и на диск.

Пути решения проблем, связанных с особенностями Python, в частности с аллокацией и управлением памятью в процессе работы pipeline и его частей, будут рассмотрены в моем докладе. Один из способов решения проблемы — это переписать эвристики в PyMalloc, но это путь самурая. Чтобы решить проблемы, надо разобраться в том, как работает PyMalloc и устроена иерархия памяти в Python.

Я расскажу, как организовать off-heap для Python, покажу способы укладывания Python-классов компактнее, чем это делает Arena allocator, рассмотрю бинарную сериализацию без pickle, которая, не теряя интерфейса pickle, дает нам новые возможности.

Александр Боргардт
duckstax

Последние 10 лет занимается исследованием новых подходов и созданием решений в областях рекламы, финтеха и ML.
В область интересов входят вопросы разработки распределенных систем, параллельной и конкурентной обработки информации.
Улучшает мир посредством opensource. cyberduckninja.com

aa.borgardt@yandex.ru