Как отследить причину ошибки SIGSEGV в обучающей работе ML Engine? - PullRequest
0 голосов
/ 28 ноября 2018

Я тренирую пользовательский оценщик тензорного потока на движке ML и сталкиваюсь с этой ошибкой:

The replica master 0 exited with a non-zero status of 11(SIGSEGV)

с единственным другим журналом ошибок:

Command '['python3', '-m', 'train_model.train', ... ']' returned non-zero exit status -11

Больше нет трассировкитак что это «недопустимая ссылка на память или ошибка сегментации код » - это все, что мне нужно.

Эта ошибка SIGSEGV не всегда возникает.Некоторые учебные задания выполняются без проблем, другие выдают эту ошибку через 4 часа, а другие - через 15 минут.

Я изменил части учебного кода оценщика, чтобы попытаться найти и найти причину ошибки, ноне увенчались успехом.

Я думал, что код 11 может соответствовать этому коду ошибки в Google API, и обнаружил число людей, которые испытали OutOfSequence и OutOfRange ошибки при использовании пользовательских метрик в оценщике EvalSpec, но я не думаю, что это является причиной ошибки здесь, поскольку я использую tf.metric.

Я использую BASICУровень масштабирования и с учетом загрузки ЦП никогда не превышает 80%, а график использования памяти показывает около 25%

Я кэширую набор данных Тензор потока, но я также получаю эту ошибку, когда не кэширую набор данных.Ошибка возникает при запуске метода train_and_evaluate, а также метода train.

Есть ли какой-нибудь совет относительно того, как я могу отследить маршрут, вызывающий эту аварию на тренировочных заданиях?Или каковы некоторые из распространенных причин этого сбоя?Является ли решение просто использовать память большего размера?

...