Скоростной тест для тестирования установки tensorflow
Я сомневаюсь, правильно ли настроен тензор на моем поле gpu, так как он примерно на 100 раз медленнее на итерацию для обучения простой модели линейной регрессии (batchsize = 32, 1500 входных функций, 150 выходных переменных) на моей машине fancy gpu, чем на моем ноутбуке.
Я использую Titan X с современным процессором и т.д. nvidia-smi говорит, что я использую только 10% gpu, но я ожидаю, что из-за небольших партиций. Я не использую feed_dict для перемещения данных в граф вычислений. Все идет через tf.decode_csv и tf.train.shuffle_batch.
Есть ли у кого-нибудь рекомендации относительно того, как легко проверить, правильно ли установлена моя установка? Есть ли простые контрольные показатели скорости? Разница в скорости между моим ноутбуком и машиной gpu настолько драматична, что я ожидаю, что все будет неправильно настроено.
Ответы
Ответ 1
Попробуйте tensorflow/tensorflow/models/image/mnist/convolutional.py
, который будет печатать данные для каждого шага.
На Tesla K40c это должно составлять около 16 ms
на шаг, в то время как на моей трехлетней машине около 120 ms
для процессора.
Изменение: Это перемещено в репозитории models
: https://github.com/tensorflow/models/blob/master/tutorials/image/mnist/convolutional.py.
Файл convolutional.py
теперь находится по адресу models/tutorials/image/mnist/convolutional.py
Ответ 2
Расширяя ответ Ярослава: Вот как выполнить весь процесс тестирования (CUDA и cudNN уже установлены)
git clone https://github.com/tensorflow/models.git
Создайте виртуальную среду для tenorflow и установите тензор потока
virtualenv --system-site-packages -p python3 tf-venv3
source tf-venv3/bin/activate
pip install --upgrade pip
pip install --upgrade tensorflow-gpu
Запустите модель в вашей виртуальной среде
python models/tutorials/image/mnist/convolutional.py
Мой GTX 1070 требует ~ 5 мс на шаг
Примечание: на Geforce 1050 Ti требуется ~ 10 мс на шаг ![enter image description here]()
Ответ 3
~ 3,6-3,7 мс на моем 1080Ti - я протестирую другой сервер с 8 2080Ti, когда закончится запуск текущей модели.