参考:https://cloud.tencent.com/developer/article/2205567
gpu处理和dla处理的优缺点,各自擅长什么?
两个直接交互时,会多余产生什么开销?
Jetson AGX Orin 和 Orin NX 板以及所有上一代 Jetson AGX Xavier 和 Xavier NX 模块都具有 DLA 内核。对于至少具有一个 DLA 实例及其相应时钟设置的所有平台。DRIVE Xavier 和 DRIVE Orin 也有 DLA 核心。
是否有特定网络或推荐用于 DLA 的网络列表?
如果您对高利用率感兴趣,那么具有高算术强度(这意味着:每个内存操作有很多数学运算)的模型最适合 DLA。
您可以在 DLA 上运行任何网络,其中支持的层在 DLA 上运行,不支持的层回退到 GPU。如果您想要在 DLA 上运行整个模型,DLA 支持骨干网,例如 EfficientNet-Lite、EfficientNet-EdgeTPU、多个 MobileNet 版本、Inception 系列的模型、ResNets、YOLO 模型。例如,您可以将分段头(例如 FCN)、对象检测头(例如 SSD)或分类头(例如 AveragePool + FC/1x1 卷积)附加到上述主干之一以用于您的特定用例。如果您对高利用率感兴趣,那么具有高算术强度(这意味着:每个内存操作有很多数学运算)的模型最适合 DLA。这方面的示例是 ResNet-18、ResNet-34 或 ResNet-50。但也有较低算术强度的模型,如 MobileNet,在 DLA 上具有低延迟。
当您部署一个在 GPU 和 DLA 之间交替层的网络时,存在什么样的开销?
由于几个常见原因,可能会产生开销:在 GPU 和 DLA 内存格式之间重新格式化张量。kCHW16 (FP16) 和 kCHW32 (INT8) 格式在 DLA 和 GPU 上很常见;但是,默认格式并不相同。因此,请确保您使用普遍支持的张量格式以避免重新格式化开销。由于工作量小而产生的开销。确保您有一个子图(网络图的连续部分)映射到 DLA 的网络,而不是在 GPU 和 DLA 之间来回移动的各个层。
DLA 支持哪些精度格式?
Orin 和 Xavier 上的 DLA 支持最佳推理精度格式 - FP16 和 INT8。Orin 上的 DLA 特别针对 INT8 进行了优化,因为与 Xavier 上的 DLA 相比,通过权衡 FP16 性能来优化 AI 推理的这种精度。同一模型中的 FP16 和 INT8 混合精度选项使您可以在精度和低资源消耗之间找到最佳平衡点。