如何获取YOLO-NAS模型的TOPS值?Jetson Orin Nano部署咨询
关于Jetson Orin Nano部署YOLO-NAS的计算复杂度与视频流承载量问题
背景说明
我正在开展Edge AI相关工作,具体是在**Jetson Orin Nano(8GB)**上部署YOLO模型,目前正进行初步研究,以确定该设备可同时处理多少路视频流(执行目标检测任务)。Jetson Orin Nano的标称性能为40TOPS(INT8精度下)。
YOLOv8的FP32计算复杂度数据
最初我打算参考YOLOv8模型的计算复杂度,从官方文档中得到以下数据:
- YOLOv8n = 10.5 GFLOPs | 3.5M 参数
- YOLOv8s = 29.7 GFLOPs | 11.4M 参数
- YOLOv8m = 80.6 GFLOPs | 26.2M 参数
- YOLOv8l = 167.4 GFLOPs | 44.1M 参数
- YOLOv8x = 260.6 GFLOPs | 68.7M 参数
但这些模型采用FP32精度,无法直接与Orin Nano的INT8性能数据进行计算。于是我寻找支持INT8权重的YOLO版本,发现YOLO-NAS,它与标准YOLO模型性能相当,但资源需求更低。
YOLO-NAS的参数与计算复杂度疑问
YOLO-NAS官方文档未提供模型所需的TOPS(或GOPS)数据,仅给出参数数量:
- YOLO-NAS S = 19.0M 参数
- YOLO-NAS M = 51.1M 参数
- YOLO-NAS L = 66.9M 参数
我尝试通过以下代码获取所需的TOPS值,但得到的结果“[...] Total mult-adds (T): 1.04”似乎不合理:
from torchinfo import summary summary(model=yolo_nas_l, input_size=(16, 3, 640, 640), col_names=["input_size", "output_size", "num_params", "trainable"], col_width=20, row_settings=["var_names"] )
从参数数量粗略估算,YOLO-NAS L与YOLOv8x相近,但YOLOv8x仅为260.6 GFLOPs,而非1.04T。我有两个疑问:
- 该计算是否存在误差?
- 由于是INT8精度,是否应该用OPS(而非FLOPs)来表述?
需求
恳请告知如何获取以OPS表示的YOLO-NAS模型复杂度,以便计算Jetson Orin Nano的可用资源承载量。非常感谢!
内容的提问来源于stack exchange,提问作者user23473914
相关产品推荐
相关产品推荐

