这次测试内容在 https://github.com/NVIDIA-AI-IOT/jetson_benchmarks 开源项目里,提供一系列针对各种视觉类深度学习模型的测试代码,使用者可以针对自己手上的Jetson设备执行各种性能测试。
要使用这个项目的第一个步骤,就是将开源仓内容下载到设备上,请执行以下指令:
$ git clone https://github.com/NVIDIA-AI-IOT/jetson_benchmarks
在项目子目录里有个 ”benchmark_csv” 目录,里面有7个针对不同设备的.csv评测配置文件,如果用本文编辑器打开的话,内容大概如下截屏所示:
这样非常不利于了解配置文件里的参数是什么意思,因此为了便于查看文件内容,建议在网页上进行(如下图)。
例如点击”orin-benchmark.csv”文件,会显示以下截屏内容。
以下简单说明以下这个表格的各栏位用途:
以上是配置文件的主要内容,项目中的7个配置文件都是针对不同设备进行优化过,除非您有较高的熟悉度,否则选择合适的文件来进行测试就可以。
在进行测试之前,我们还需要下载所需要的模型文件,这就是配置表中最右边的URL栏的位置,不过这些连接全部都放在国外的DropBox网盘中,需要有特殊方法进行下载,请自行处理。
在 ”utils” 目录下有个 download_models.py 工具代码,可以为我们这些模型下载的动作,不过在下载之前,我们需要先创建一个存放模型文件的子目录,然后根据所要测试的设备(例如Jetson Orin Nano开发套件)执行下载代码。请执行以下指令:
# 在 jetson_benchmark 目录下
mkdir models
sudo sh install_requirements.sh
python3 utils/download_models.py --all --csv_file_path benchmark_csv/orin-nano-benchmarks.csv --save_dir models
然后就会执行下面的下载任务,存放在刚刚创建的 ”models” 目录下:
最后,执行以下指令,就可以一次进行多个神经网络模型的性能测试:
# 在 jetson_benchmark 目录下
sudo python3 benchmark.py --all --csv_file_path benchmark_csv/orin-nano-benchmarks.csv --model_dir models/ --jetson_clocks
现在就开始执行性能测试,整个过程大约2个小时。
当然我们也可以使用 ”--model_name” 参数,指定个别模型进行测试,例如下面指令就能单独检测Tiny-YOLO-v3模型的性能:
# 在 jetson_benchmark 目录下
sudo python3 benchmark.py --model_name tiny-yolov3 --csv_file_path benchmark_csv/orin-nano-benchmarks.csv --model_dir models/ --jetson_clocks
整个过程相当直观,请自行扩展。【完】