3

处理后的数据是实时视频(一堆连续的帧),它们都需要在 DX12 缓冲区中结束。

我不太关心数据是否在训练期间被复制到系统内存,但在评估期间,它必须保留在 GPU 上。

我会在 python 中单独训练网络,允许高延迟,但是在训练之后,我会完全在 GPU 上使用它(因为我的帧已经在那里)。从我的角度来看(有 GPGPU 编程经验,但对 Tensorflow 了解不多),有两种方法可以做到这一点:

  1. 从 Python 中训练好的模型中提取参数(权重和偏差),并将它们上传到 GPU 上具有相同网络拓扑的 c++ 程序并在那里运行。它的行为应该像训练它的 Tensorflow 网络。

  2. 在 c++ 程序中也使用 Tensorlow,只传递输入和输出的缓冲区句柄(就像使用 GPGPU 所做的那样),然后与 DX12 互操作(因为我需要在此处结束评估)。

想知道这些选项是否可行,如果可行,哪个更好,为什么?

如果我留下任何不清楚的地方,请在评论中告诉我。

4

0 回答 0