2016-06-16 3 views
-1

Я запускаю программу python во встроенной системе. На основе типа экземпляра EC2 объем доступной памяти будет различаться. Я хотел бы ограничить объем памяти, который использует моя программа python, ограничивая объем физической памяти, которая подвергается интерпретатору python.Есть ли способ настроить представление интерпретатора Cpython для системной памяти

Основываясь на запуске программы на разных типах экземпляров, кажется, что интерпретатор смотрит на количество доступной физической памяти и предопределяет пулы или вырастает куча?

Ограниченная физическая память, открытая интерпретатору, помогла бы снизить площадь памяти.

Базовая операционная система - NetBSD, поэтому группы или эквивалентная поддержка, похоже, не существуют.

Есть ли способ достичь этого?

ответ

0

Это может быть интерпретатор, просто используя доступную память? Изменяется ли поведение, если 'ulimit' используется для ограничения доступной памяти?

+0

Мой плохой. Проблема заключалась в фрагментации памяти. Глядя на код интерпретатора, он не выглядит так, как будто он проверяет доступную память. Я закончил переработку моего кода, чтобы использовать предварительно распределенные буферы bytearray для обработки данных, и это, похоже, хорошо работает. –

+0

Использование ulimit для ограничения использования памяти изменяет поведение. При достижении установленного предела программа запускается в исключения MemoryError. Спасибо, что посмотрели на вопрос. –

Смежные вопросы