У меня есть программа Python, которая умирает с MemoryError, когда я кормлю ее большим файлом. Существуют ли какие-либо инструменты, которые я мог бы использовать, чтобы понять, что использует память?
Эта программа отлично работает на небольших входных файлах. Очевидно, что программа нуждается в улучшении масштабируемости; Я просто пытаюсь выяснить, где. "Тест, прежде чем вы оптимизируете", как однажды сказал мудрый человек.
(Только для предотвращения неизбежного ответа "добавить больше оперативной памяти": это работает в 32-разрядном окне WinXP с 4 ГБ оперативной памяти, поэтому Python имеет доступ к 2 ГБ полезной памяти. Добавление большего объема памяти технически невозможно. ПК с 64-битной Windows не является практичным.)
EDIT: Ой, это дубликат Какой профилер памяти Python рекомендуется?