Предположим, что мы генерируем наши собственные обучающие данные (путем выборки из некоторого процесса распространения и вычисления, например, некоторого количества интересующего его количества) и что у нас есть собственная подпрограмма CUDA под названием generate_data, которая генерирует метки в памяти графического процессора для данного набора входных данных.
Следовательно, мы находимся в специальной настройке, где мы можем генерировать столько пакетов обучающих данных, сколько мы хотим, в режиме "онлайн" (на каждой итерации пакета мы вызываем эту процедуру generate_data, чтобы сгенерировать новый пакет и отбросить старый пакет).
Поскольку данные генерируются на графическом процессоре, есть ли способ заставить TensorFlow (API-интерфейс Python) напрямую использовать его в процессе обучения? (например, для заполнения заполнителя). Таким образом, такой конвейер будет эффективным.
Насколько я понимаю, в настоящее время вам потребуется такая настройка, чтобы скопировать данные из графического процессора в процессор, а затем позволить TensorFlow снова скопировать их из процессора в графический процессор, что довольно расточительно, поскольку выполняются ненужные копии.
РЕДАКТИРОВАТЬ: если это помогает, мы можем предположить, что подпрограмма CUDA реализована с использованием JIT-компилятора Numba CUDA.