NVIDIA Jetson TX2 中运行YOLOv7循环报出OpenBLAS警告

jetson tx2运行yolo v7时,循环报错如下,这个该怎么解决呀
OpenBLAS Warning : Detect OpenMP Loop and this application may hang. Please rebuild the library with USE_OPENMP=1 option.

意思就是代码中可能为了提速,使用了OMP优化指令如 #pragma parallel omp之类的,既然用了优化指令 那你编译时就要加上 USE_OPENMP
或者你直接把omp优化指令全都注释掉就OK,速度慢点而已 不影响结果。

如果您正在使用OpenBLAS库,请重新编译它,并使用USE_OPENMP=1选项,以开启OpenMP循环的支持。可以在安装OpenBLAS时使用此选项,或者在重新编译OpenBLAS时添加此选项。

该回答引用GPTᴼᴾᴱᴺᴬᴵ
这个错误信息是因为OpenBLAS库检测到了OpenMP循环,并提示需要使用OpenMP选项重新构建该库。OpenMP是一种并行编程的标准,可以在多核CPU上提高程序的性能。

要解决此问题,可以尝试以下几个步骤:

  1. 升级OpenBLAS库:尝试升级OpenBLAS库到最新版本,该版本可能已经修复了该问题。
  2. 重新编译OpenBLAS库:使用USE_OPENMP=1选项重新编译OpenBLAS库,以启用OpenMP支持。
  3. 禁用OpenMP:在运行程序之前,将OpenMP禁用,可以通过将环境变量OMP_NUM_THREADS设置为1来实现,这将限制程序只能使用一个线程。
  4. 更换其他深度学习框架:如果您使用的深度学习框架支持多线程或分布式训练,可以尝试使用其他框架替代。