2016-08-15 3 views
0

с помощью Tensorflow r0.9/r.10 Я получаю следующее сообщение, из-за которого меня волнует, я установил неверную модель нейронной сети.TensorFlow PoolAllocator огромное количество запросов

I tensorflow/core/common_runtime/gpu/pool_allocator.cc:244] PoolAllocator: After 6206792 get requests, put_count=6206802 evicted_count=5000 eviction_rate=0.000805568 and unsatisfied allocation rate=0.000806536 

сеть я использую аналогично AlexNet/VGG-М, я создаю переменные и оп в функции вызывается один раз, а затем я просто цикл в течение нескольких эпох, призывающих та же omptimizer, потеря и предсказание функции для каждой итерации мини-партии.

Еще одна вещь, которая меня волнует, заключается в том, что сеть может быть нестабильной при использовании большого размера партии: она работает отлично для нескольких эпох, а затем она выходит из памяти (пытаясь выделить ...).

Есть ли способ проверить, есть ли что-то неправильно и что это такое?

ответ

0

Это оператор журнала информационного уровня (префикс «I»). Это не обязательно означает, что что-то не так: однако, распределитель пула (кеш для распределений) обнаруживает, что он часто приходится отбрасывать на базовый распределитель. Это может указывать на давление памяти.

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

+0

Спасибо @ peter-hawkins, я сделал это уже, и мне удается стабильно тренироваться, но это не удовлетворяет мое любопытство. Я предполагаю, что было бы неплохо сделать, чтобы увидеть, какая операция выделяет большую часть памяти. Несколько раз назад я обнаружил, что оператор LRN не был реализован GPU, поэтому он будет работать только на процессоре: это было легко остановить, учитывая высокая загрузка процессора. В случае оператора, генерирующего все больше и больше переменных, какими будут лучшие профилирующие действия (любое предложение приветствуется!). – Alvise