Как найти утечку памяти в Python M XNet? - PullRequest
0 голосов
/ 18 июня 2020

Боюсь, что моя нейронная сеть в M XNet, записанная в Python, имеет утечку памяти. Я пробовал профилировщик M XNet и модуль tracemallo c, чтобы получить представление о профилировании памяти, но я хочу получить информацию о любых потенциальных утечках памяти, как и с valgrind в C.

Я обнаружил Обнаружение утечек памяти и переполнения буфера в M XNet, и после управления сборкой, как описано в разделе «Использование сборок ASAN с M XNet», заменив «ubuntu_cpu» "часть в docker/Dockerfile.build.ubuntu_cpu -t mxnetci/build.ubuntu_cpu с" ubuntu_cpu_ python ", я попытался выполнить в AWS Sagemaker Notebook следующим образом:

root@33e38e00f825:/work/mxnet# nosetests3 --verbose /home/ec2-user/SageMaker/run_predict.py

и получил эту ошибку импорта:

Ошибка: ImportError (Нет модуля с именем 'run_predict') ... ОШИБКА

Мой run_predict.py выглядит так:

#!/usr/bin/env python
def run_predict(n):
  # calling MXNet inference method

run_predict(-1)  # tried it putting it under 'if __name__ == "__main__":'

То, что мне не хватает в моем скрипте , что мне следует изменить?

Пример сценария, который они используют в ссылке: rnn_test.py , но даже когда я запускаю этот пример, я все равно получаю аналогичную ошибку импорта.

1 Ответ

1 голос
/ 30 августа 2020

В M XNet мы автоматически проверяем это, исследуя записи сборки мусора. Вы можете узнать, как это реализовано здесь: https://github.com/apache/incubator-mxnet/blob/c3aff732371d6177e5d522c052fb7258978d8ce4/tests/python/conftest.py#L26 -L79

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...