This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TDA4VH-Q1:edgeai-benchmark r11.0 和最新的 rtmdet 模型编译

Guru**** 2419530 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1544869/tda4vh-q1-edgeai-benchmark-r11-0-and-latest-rtmdet-model-compile

器件型号:TDA4VH-Q1
主题中讨论的其他器件:AM69A

工具/软件:

大家好!

我最近更新到 edgeai-benchmark r11.0 的最新分支、因为最新的 rtmdet lite 模型现已推出。 这里重点介绍两种型号:

OD-9206_onnxrt_coco_edgeai-mmdet_rtmdet_m_coco_lite_640x640_20250404_model_onnx

OD-9208_onnxrt_coco_edgeai-mmdet_rtmdet_l_coco_orig_640x640_20250310_model_onnx

所有依赖项均通过全新的 anaconda 虚拟环境设置、运行 requirements 脚本。  在使用 rtmdet 模型之前,我使用 od-8220 (yolox) 和 od-8850/od-8860 (yolov7 ) 进行了一些管道清洁测试,这些测试似乎编译正常。

总的来说、我仍然认为 rtmdet 模型编译存在问题。 一个观察结果是、run_benchmark_pc.sh 在第一次运行时遇到依赖问题、但在第二次运行时它会正常运行。 相关性问题如下所示:

INFO:20250723-222804:配置数量 — 1
Tasks total=1、NUM_running=1:0%|| 0/1[00:44ERROR:20250723-222848:model_id:od-9208 run_import:True run_immation:False — 没有名为“osrt_model_tools.onnx_tools.tidl_onnx_model_optimizer"的“的模块
回溯(最近一次呼叫):
文件“run_pipeline 第 291 行中的/home/gunter/ti-edgeai/edgeai-tensorlab/edgeai-benchmark/edgeai_benchmark/pipelines/pipeline_runner.py
结果= cls._run_pipel_impl(设置,pipeline、config,描述)
文件“run_pipeline_impl 中的/home/gunter/ti-edgeai/edgeai-tensorlab/edgeai-benchmark/edgeai_benchmark/pipelines/pipeline_runner.py 第 326 行
结果=精度_流水线(说明)
文件“/home/gunter/ti-edgeai/edgeai-tensorlab/edgeai-benchmark/edgeai_benchmark/pipelines/accuracy_pipeline.py、第 76 行、位于__call__
param_result = self._run (description=description)
/home/gunter/ti-edgeai/edgeai-tensorlab/edgeai-benchmark/edgeai_benchmark/pipelines/accuracy_pipeline.py、第 109 行、位于_run
self._import_model(描述)
/home/gunter/ti-edgeai/edgeai-tensorlab/edgeai-benchmark/edgeai_benchmark/pipelines/accuracy_pipeline.py、第 170 行、位于_import_model 中
is_ok = session.start_import ()
/home/gunter/ti-edgeai/edgeai-tensorlab/edgeai-benchmark/edgeai_benchmark/sessions/onnxrt_session.py、第 47 行、位于 start_import 中
BaseRTSession.start_import(自行)
文件/home/gunter/ti-edgeai/edgeai-tensorlab/edgeai-benchmark/edgeai_benchmark/sessions/basert_session.py、第 158 行、位于 start_import 中
self._preare_model()
prepare_model 中的文件/home/gunter/ti-edgeai/edgeai-tensorlab/edgeai-benchmark/edgeai_benchmark/sessions/basert_session.py、第 153 行
self.get_model()
文件“get_model"中“中的/home/gunter/ti-edgeai/edgeai-tensorlab/edgeai-benchmark/edgeai_benchmark/sessions/basert_session.py 第 445 行
apply_input_optimization = self._optimize_model (model_file、is_new_file=is_new_file)
/home/gunter/ti-edgeai/edgeai-tensorlab/edgeai-benchmark/edgeai_benchmark/sessions/basert_session.py、第 504 行、位于_optimize_model 中
从 osrt_model_tools.onnx_tools.tidl_onnx_model_optimizer.ops 导入 get_optimizers
ModuleNotFoundError:没有名为“osrt_model_tools.onnx_tools.tidl_onnx_model_optimizer"的“的模块

第二次运行 run_benchmarks_pc.sh 可以让我们通过此错误并运行到完成、从而生成模型工件。 但 run.log 文件在 Optimization for subgraph started 下显示了此问题:

[0m[35;1m===================== [子图形 0 的优化已开始]=====================

[0m455 层名称无效
无效的图层名称 472
图层名称 489 无效
图层名称 448 无效
图层名称 465 无效
无效的图层名称 482
图层名称 455 无效

...

我附加了 od-9208 rtmdet large lite 的 run.log 文件

e2e.ti.com/.../4857.run.log

有人能回顾一下、并告诉我设置中的潜在问题吗?

如果您需要更多信息、请告诉我。

谢谢!

-- Gunter

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我还应该说 osrt_model_tools 似乎已正确安装

    @Linux-005:~/anaconda3/envs/edgeai-benchmark/lib/python3.10/site-packages/osrt_model_tools/onnx_tools/tidl_onnx_model_optimizer$ls
    __init__.py ops.py optimize.py __pycache__ src test_optimize.py

    只有在第一次尝试编译 rtmdet 时才会出现错误。 对于其他型号、我看不到这种情况发生。

    此致、

    -- Gunter

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Gunter、

    我认为未安装模型优化器。  请转至 edgeai-tidl-tools/tree/master/osrt-model-tools/osrt_model_tools/onnx_tools 并运行 source ./setup.sh。  这时应该会安装模型优化器模块。

    请参阅:

    https://github.com/TexasInstruments/edgeai-tidl-tools/tree/master/osrt-model-tools/osrt_model_tools/onnx_tools/tidl_onnx_model_optimizer

    此致、

    Chris

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Chris、

    好的、让我来做一下。

    但在前面、让我谈谈当前状态

    (edgeai-benchmark) gunter@Linux-005:~/anaconda3/envs/edgeai-benchmark/lib/python3.10/site-packages/osrt_model_tools/onnx_tools/tidl_onnx_model_optimizer$ ls
    __init__.py  ops.py  optimize.py  __pycache__  src  test_optimize.py
    
    (edgeai-benchmark) gunter@Linux-005:~/ti-edgeai/edgeai-tensorlab/edgeai-benchmark$ pip list |grep osrt
    osrt_model_tools        1.2
    
    

    当 edgeai-benchmark ./ setup_pc.sh 运行时,它有以下日志(osrt 部分)

    ...
    --------------------------------------------------------------------------------------------------------------
    Found local edgeai-tidl-tools, installing osrt_model_tools in develop mode
    --------------------------------------------------------------------------------------------------------------
    WARNING: Skipping osrt_model_tools as it is not installed.
    running develop
    /home/gunter/.local/lib/python3.10/site-packages/setuptools/command/develop.py:41: EasyInstallDeprecationWarning: easy_install command is deprecated.
    !!
    
            ********************************************************************************
            Please avoid running ``setup.py`` and ``easy_install``.
            Instead, use pypa/build, pypa/installer or other
            standards-based tools.
    
            See github.com/.../917 for details.
            ********************************************************************************
    
    !!
      easy_install.initialize_options(self)
    /home/gunter/.local/lib/python3.10/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
    !!
    
            ********************************************************************************
            Please avoid running ``setup.py`` directly.
            Instead, use pypa/build, pypa/installer or other
            standards-based tools.
    
            See blog.ganssle.io/.../setup-py-deprecated.html for details.
            ********************************************************************************
    
    !!
      self.initialize_options()
    running egg_info
    writing osrt_model_tools.egg-info/PKG-INFO
    writing dependency_links to osrt_model_tools.egg-info/dependency_links.txt
    writing requirements to osrt_model_tools.egg-info/requires.txt
    writing top-level names to osrt_model_tools.egg-info/top_level.txt
    reading manifest file 'osrt_model_tools.egg-info/SOURCES.txt'
    writing manifest file 'osrt_model_tools.egg-info/SOURCES.txt'
    running build_ext
    Creating /home/gunter/anaconda3/envs/edgeai-benchmark/lib/python3.10/site-packages/osrt-model-tools.egg-link (link to .)
    Adding osrt-model-tools 1.2 to easy-install.pth file
    
    Installed /home/gunter/ti-edgeai/edgeai-tensorlab/edgeai-tidl-tools/osrt-model-tools
    Processing dependencies for osrt-model-tools==1.2
    Searching for setuptools==78.1.1
    Best match: setuptools 78.1.1
    Adding setuptools 78.1.1 to easy-install.pth file
    
    Using /home/gunter/anaconda3/envs/edgeai-benchmark/lib/python3.10/site-packages
    Finished processing dependencies for osrt-model-tools==1.2
    --------------------------------------------------------------------------------------------------------------
    INFO: installing tidl-tools-package version: 11.0
    Collecting dlr==1.13.0 (from -r ./tools/requirements/requirements_11.0.txt (line 2))
      Using cached software-dl.ti.com/.../dlr-1.13.0-py3-none-any.whl (1.4 MB)
    Collecting tvm==0.12.0 (from -r ./tools/requirements/requirements_11.0.txt (line 3))
      Using cached software-dl.ti.com/.../tvm-0.12.0-cp310-cp310-linux_x86_64.whl (52.1 MB)
    Collecting onnxruntime-tidl==1.15.0 (from -r ./tools/requirements/requirements_11.0.txt (line 4))
      Using cached software-dl.ti.com/.../onnxruntime_tidl-1.15.0-cp310-cp310-linux_x86_64.whl (7.6 MB)
    ...
    Collecting git+github.com/.../edgeai-tidl-tools.git@11_00_08_00 (from -r ./requirements/requirements_pc.txt (line 18))
      Cloning github.com/.../edgeai-tidl-tools.git (to revision 11_00_08_00) to /tmp/pip-req-build-t6ku0okm
      Running command git clone --filter=blob:none --quiet github.com/.../edgeai-tidl-tools.git /tmp/pip-req-build-t6ku0okm
      Running command git checkout -q 23b72b5781569a261792d98f6c17503b30b4a283
      Resolved github.com/.../edgeai-tidl-tools.git to commit 23b72b5781569a261792d98f6c17503b30b4a283
      Preparing metadata (setup.py) ... done
    ...
    Requirement already satisfied: setuptools>=18.0 in /home/gunter/.local/lib/python3.10/site-packages (from osrt_model_tools==1.2->-r ./requirements/requirements_pc.txt (line 18)) (73.0.0)
    ...
    Building wheels for collected packages: osrt_model_tools, fire
      Building wheel for osrt_model_tools (setup.py) ... done
      Created wheel for osrt_model_tools: filename=osrt_model_tools-1.2-py3-none-any.whl size=271356 sha256=d5effc54133556a0a6574cb0005e39123ba4491c8f93e0a7b499f22111c84695
      Stored in directory: /tmp/pip-ephem-wheel-cache-zu0hr78d/wheels/95/77/e5/118410696c3982b079b2d47c1df68d82da615c4322a6775ce7
      Building wheel for fire (setup.py) ... done
      Created wheel for fire: filename=fire-0.7.0-py3-none-any.whl size=114248 sha256=b43932f5ed82455431c1202d9285e65e330a222b79d7c7468b49918fde5e7111
      Stored in directory: /home/gunter/.cache/pip/wheels/19/39/2f/2d3cadc408a8804103f1c34ddd4b9f6a93497b11fa96fe738e
    Successfully built osrt_model_tools fire
    Installing collected packages: termcolor, Shapely, pyparsing, pluggy, pillow, osrt_model_tools, kiwisolver, iniconfig, fonttools, exceptiongroup, cycler, colored, colorama, pytest, matplotlib, fire, descartes, nuscenes-devkit
      Attempting uninstall: osrt_model_tools
        Found existing installation: osrt_model_tools 1.2
        Uninstalling osrt_model_tools-1.2:
          Successfully uninstalled osrt_model_tools-1.2
    ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
    cityscapesscripts 2.2.3 requires appdirs, which is not installed.
    interrogate 1.7.0 requires click>=7.1, which is not installed.
    interrogate 1.7.0 requires py, which is not installed.
    Successfully installed Shapely-1.8.5.post1 colorama-0.4.6 colored-2.3.0 cycler-0.12.1 descartes-1.1.0 exceptiongroup-1.3.0 fire-0.7.0 fonttools-4.59.0 iniconfig-2.1.0 kiwisolver-1.4.8 matplotlib-3.5.3 nuscenes-devkit-1.1.11 osrt_model_tools-1.2 pillow-11.3.0 pluggy-1.6.0 pyparsing-3.2.3 pytest-8.4.1 termcolor-3.1.0
    ...
    

    如果我错、请纠正我、但我认为已安装模型优化器。

    此致、

    -- Gunter

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Gunter、

    我得到了相同的错误,但它仍然有效。  请尝试 ONX 优化、它也会为您效劳。

    此致、

    Chris

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Chris、

    此行为与之前相同:如上所述安装优化器后、 *first* run_betchmark_PC 仍会导致优化器错误

    ModuleNotFoundError:没有名为“osrt_model_tools.onnx_tools.tidl_onnx_model_optimizer"的“的模块

    但随后的*second* run_basels_pc 会运行到结束、但我不能完全确定 run.log 是否有问题。

    我会很快再次发布 run.log 以提高可见性。

    此致、

    -- Gunter