Когда я запускаю свой код Python на самых мощных экземплярах графического процессора AWS (с 1 или 8 x Tesla v100 16 Мбайт. P3.x2large или P3.16xlarge), они оба только в 2-3 раза быстрее, чем мой DELL XPSНоутбук Geforce 1050-Ti?
Я использую Windows, Keras, Cuda 9, Tensorflow 1.12 и новейшие драйверы Nvidia.
Когда я проверяю загрузку графического процессора через GZU, максимальный графический процессор.работать на 43% нагрузки в течение очень короткого периода времени - каждый раз.Контроллер работает на макс.100% ...
Набор данных, который я использую, - это матрицы в формате JSON, а файлы расположены на диске Nitro по 10 ТБ с МАКС 64.000 IOPS.Неважно, содержит ли папка 10 ТБ, 1 ТБ или 100 МБ ... обучение все еще очень и очень медленное за одну итерацию?
Все советы приветствуются!
ОБНОВЛЕНИЕ 1:
Из документов Tensorflow:
" Чтобы запустить конвейер ввода, вы должны определить источник. Например, чтобы построить набор данных из некоторых тензоров в памяти, вы можете использовать tf.data.Dataset.from_tensors () или tf.data.Dataset.from_tensor_slices (). В качестве альтернативы, если ваши входные данные находятся на диске в рекомендуемом формате TFRecord, вы можете создать tf.data.TFRecordDataset. "
Раньше у меня были матрицы, хранящиеся в формате JSON (Made by Node).Мой TF работает на Python.Теперь я буду только сохранять координаты в узле и сохранять их в формате JSON.Вопрос в том, что в Python является лучшим решением для загрузки данных?Может ли TF использовать только координаты или мне нужно снова вернуть координаты в матрицы или как?