Получение SIGKILL при запуске оптимизации исследования с помощью Optuna на PyCharm

Я пытаюсь провести исследование, используя функцию оптимизации с семплером по умолчанию и средним секатором. при каждом запуске происходит сбой, иногда после одной успешной попытки, иногда без завершения. Сообщение о сбое: Процесс завершен с кодом выхода 137 (прерван сигналом 9: SIGKILL)

Ожидаемое поведение

проведение исследования

Окружающая среда

  • Версия Optuna: 2.0.0
  • Версия Python: 3.8
  • ОС:QubeOS с ВМ debian 10
  • (Необязательно) Другие библиотеки и их версии: Pytorch '1.5.0+cpu'

Сообщения об ошибках, трассировки стека или журналы

Процесс завершен с кодом выхода 137 (прерван сигналом 9: SIGKILL)

что вызывает такую ​​ошибку?

2 ответа

Одна из вероятных ситуаций состоит в том, что ваш процесс потребляет много памяти и его убивает OOM-убийца операционной системы. Вы можете отслеживать потребление памяти вашим процессом, используя такой инструмент, какtop и посмотрите, много ли он использует памяти.

Вы также можете запустить dmesgв консоли и поищите в выводе сообщения от OOM killer. Убийца OOM обычно печатает там, какой процесс он убил. Проверьте, соответствует ли идентификатор вашего процесса.

Если процесс действительно убит OOM-убийцей, то единственное средство, вероятно, - уменьшить потребление памяти программой (или получить машину большего размера).

вы можете играть безопасно и использовать

      gc_after_trial=True

есть Study.optimize(timeout=300), но мне не удалось заставить это работать, есть также тайм-аут и лимит n_trial, которые вы можете установить, если используете tpesampler в HyperbandPruner. наконец, что для меня работает, так это более низкое n_jobs (я установил значение -1 и имел тенденцию увеличивать все свои ядра до 100% и, наконец, просто зависать).

Другие вопросы по тегам