Я использую диспетчер развертывания в Google Cloud для создания виртуальной машины с 4 графическими процессорами.Я преобразовал свою модель нейронной сети (построенную с использованием тензорного потока) для параллелизации данных и обучения пакетов на каждом из 4 графических процессоров.Я усредняю градиенты на процессоре, а затем возвращаю переменные в графический процессор.Очень похоже на модель CIFAR-10
Однако, я заметил очень небольшой выигрыш с точки зрения времени, затраченного на запуск модели.Мой набор данных составляет около 5 млн строк и 60 столбцов.Нет изображений, все числа.
Во время мониторинга я заметил, что каждый из 4 графических процессоров использует около 16% использования графического процессора и почти все 11441 МБ памяти на каждом из них.
Myвопросы: - 1. Что такое хороший способ устранения неполадок, почему не видно повышения производительности?Это из-за памяти, batch_size или просто моих данных?Является ли метод проб и ошибок единственным способом устранения неполадок в этом 2. Я также вижу 2 устройства под названием XLA_GPU и XLA_CPU.Я понимаю, что XLA - это технология тензорного потока для запуска более быстрых моделей, но я не уверен, действительно ли она используется для моей модели.Могу ли я усреднить градиенты на XLA_GPU вместо процессора?
Спасибо