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.

[参考译文] SK-AM68:定制模型在 TIDL 10_00_06_00和 SDK 10时挂起

Guru**** 2468610 points
Other Parts Discussed in Thread: AM68A, AM69A

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1424848/sk-am68-custom-model-hangs-with-tidl-10_00_06_00-and-sdk-10

器件型号:SK-AM68
主题中讨论的其他器件:AM69A、AM68A

工具与软件:

我正在更新设置以使用 SDK 10 (链接:www.ti.com/.../10.00.00.08)。  我有一个模型、我在 SDK 9.2和 TIDL 发行版09_02_06_00下编译。 该示例在主机以及 AM68-SK 上按预期运行。 我使用 onnxrt_ep.py 来验证基线推理是否有效。 它还与 gstreamer 插件配合工作。

如果我为 SDK 10和 TIDL 发行版10_00_06_00编译模型、它会在主机上按预期运行。 当我尝试在 AM68-SK 上运行它时、onnxrt_ep.py 会无限期地挂起、我不确定原因。

说明和意见:

-我在 TIDL 版本之间使用完全相同的 ONNX 模型。

-该模型是基于 ConvNeXT 的语义分割模型。

-我已经能够根据 TIDL 09_02_09_00编译模型,一切都按预期运行。

-我已经尝试编译它与 TIDL 10_00_02_00,这也挂起。

-我已经验证我的 SDK 10 TIDL 模型构建看起来是有效的。 为了进行完整性检查、我已经根据10_00_06_00在主机上构建了 od-8220_onnxrt_coco_edgeai-mmdet_yolox_s_lite_640x640_20220221_model_onnx、并将其部署到目标。 运行的示例。

-模型的 tempDir/runtimes_visualization.svg 文件在 SDK 9.2和 SDK 10版本之间在视觉上是相同的。

- tempDir/..._net.bin.svg 文件不同。 SDK 10版本 包括插入的 BatchNorm 层、位于第一个 conv 层之前(ONNX 模型没有此层)。 此外、在深入 hang 之前我没有注意到这一点、但 TIDL 09_02_06_00版本缺少一个 BatchNorm 层、而 ONNX 模型在后续的一个层中定义了这个层。  此 BatchNorm 层位于 SDK 10的..._net.bin.svg 文件中。

-`m我在` odel_configs.py 中设置'debug_level':3 ,当它在 SDK 10上运行挂起时,我会看到以下内容:

************ TIDL_subgraphRtCreate done ************
Iteration: 0
******* In TIDL_subgraphRtInvoke ********

"迭代:0"是我添加到 onnxrt_ep.py 中的调试打印。

-当它挂起时,我可以按 Ctrl-Z 并返回到控制台提示符。 不过、此时我需要重新启动板。 如果我尝试遵循挂起、运行我确认有效的模型(od-8220_onnxrt_coco_edgeai-mmdet_yolox_s_lite_640x640_20220221_model_onnx)、则该问题太多了。 重新引导将清除此状态。

-为了提高模型的准确性,我已经 通过"advanced_options:output_feature_16bit_names_list"为16位配置了我的第一个 conv 层。 模型的其余部分为8位。 以下是我使用的配置:

'ss-ort-800k-model-f1-pre-and-post' : {
'model_path' : '/home/root/projects/edgeai-tidl-tools/models/public/800k_model_f1_pre_and_post.onnx',
'mean': [0, 0, 0],
'scale' : [1.0, 1.0, 1.0],
'num_images' : numImages,
'calib_images' : '/home/root/calib_data/png_files/*.png',
'num_classes': 5,
'session_name' : 'onnxrt' ,
'model_type': 'seg',
'accuracy_level': 1,
'optional_options' :
{
'tensor_bits' : 8,
'advanced_options:quantization_scale_type': 4,
'advanced_options:calibration_frames':20,
'advanced_options:output_feature_16bit_names_list':'/backbone/0/0/Conv_output_0'
},
},

有什么想法、为什么在 SDK 10下适用于 SDK 9时、事情会挂起?  

该编译提到了"C7x 固件版本" 10_00_02_00兼容性。  如何确认我在电路板上安装的固件版本?  虽然,如果有一个不匹配,我会认为 OD-8220 ... 模型在 SDK10下无法正常工作、但它确实可以。

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

    以下是到挂起点的轨迹:

    python3 ./onnxrt_ep.py -m ss-ort-800k-model-f1-pre-and-post
    Available execution providers :  ['TIDLExecutionProvider', 'TIDLCompilationProvider', 'CPUExecutionProvider']
    
    Running 1 Models - ['ss-ort-800k-model-f1-pre-and-post']
    
    
    Running_Model :  ss-ort-800k-model-f1-pre-and-post  
    
    libtidl_onnxrt_EP loaded 0x4021d350 
    artifacts_folder                                = ../../../model-artifacts//ss-ort-800k-model-f1-pre-and-post/ 
    debug_level                                     = 3 
    target_priority                                 = 0 
    max_pre_empt_delay                              = 340282346638528859811704183484516925440.000000 
    Final number of subgraphs created are : 1, - Offloaded Nodes - 127, Total Nodes - 127 
    In TIDL_createStateInfer 
    Compute on node : TIDLExecutionProvider_TIDL_0_0
    ************ in TIDL_subgraphRtCreate ************ 
     APP: Init ... !!!
     13960.380972 s: MEM: Init ... !!!
     13960.381033 s: MEM: Initialized DMA HEAP (fd=5) !!!
     13960.381184 s: MEM: Init ... Done !!!
     13960.381208 s: IPC: Init ... !!!
     13960.419120 s: IPC: Init ... Done !!!
    REMOTE_SERVICE: Init ... !!!
    REMOTE_SERVICE: Init ... Done !!!
     13960.426908 s: GTC Frequency = 200 MHz
    APP: Init ... Done !!!
     13960.427025 s:  VX_ZONE_INIT:Enabled
     13960.427037 s:  VX_ZONE_ERROR:Enabled
     13960.427042 s:  VX_ZONE_WARNING:Enabled
     13960.428331 s:  VX_ZONE_INIT:[tivxPlatformCreateTargetId:124] Added target MPU-0 
     13960.428646 s:  VX_ZONE_INIT:[tivxPlatformCreateTargetId:124] Added target MPU-1 
     13960.432402 s:  VX_ZONE_INIT:[tivxPlatformCreateTargetId:124] Added target MPU-2 
     13960.432786 s:  VX_ZONE_INIT:[tivxPlatformCreateTargetId:124] Added target MPU-3 
     13960.432863 s:  VX_ZONE_INIT:[tivxInitLocal:136] Initialization Done !!!
     13960.433687 s:  VX_ZONE_INIT:[tivxHostInitLocal:106] Initialization Done for HOST !!!
    ************ TIDL_subgraphRtCreate done ************ 
    Iteration: 0
     *******   In TIDL_subgraphRtInvoke  ******** 
    

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    - tempDir/..._net.bin.svg 文件不同。 SDK 10版本 包括插入的 BatchNorm 层、位于第一个 conv 层之前(ONNX 模型没有此层)。 此外、在深入 hang 之前我没有注意到这一点、但 TIDL 09_02_06_00版本缺少一个 BatchNorm 层、而 ONNX 模型在后续的一个层中定义了这个层。  此 BatchNorm 层位于 SDK 10的..._net.bin.svg 文件中。[/QUOT]

    我刚才看了09_02_09_00 tempDir/..._net.bin.svg 输出、它与10_00_06_00生成的输出一致:"额外的"BatchNorm 出现在第一个 conv 层之前、而后来的 BatchNorm 层也存在。  如前所述、09_02_09_00可以按预期在 AM68-SK 目标上运行。

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

    将 DEBUG_LEVEL 设置为2、并在10_00_06_00和09_02_09_00下编译。  我不确定它是否与挂起问题有关、但10_00_06_00报告在处理 ReSize 运算符时找不到一些初始化程序、09_02_09_00对此保持沉默。  我相信这是一个善意的消息,但认为最好报告它,以防它不是。

    09_02_09_00的相关编译片段:

    Supported TIDL layer type ---          Resize -- /unpool6/Resize
    Supported TIDL layer type ---            Conv -- /conv6/Conv
    Supported TIDL layer type ---             Add -- /Add
    Supported TIDL layer type ---            Conv -- /conv6_7/conv_layer/Conv
    Supported TIDL layer type ---            Relu -- /conv6_7/Relu
    Supported TIDL layer type ---          Resize -- /unpool7/Resize
    Supported TIDL layer type ---            Conv -- /conv7/Conv
    Supported TIDL layer type ---             Add -- /Add_1
    Supported TIDL layer type ---            Conv -- /conv7_8/conv_layer/Conv
    Supported TIDL layer type ---            Relu -- /conv7_8/Relu
    Supported TIDL layer type ---          Resize -- /unpool8/Resize
    Supported TIDL layer type ---            Conv -- /conv8/Conv
    Supported TIDL layer type ---             Add -- /Add_2
    Supported TIDL layer type ---            Conv -- /conv8_9/conv_layer/Conv
    Supported TIDL layer type ---            Relu -- /conv8_9/Relu
    Supported TIDL layer type ---          Resize -- /unpool9/Resize
    Supported TIDL layer type ---            Conv -- /conv9/conv_layer/Conv
    Supported TIDL layer type ---            Relu -- /conv9/Relu
    Supported TIDL layer type ---             Add -- /Add_3
    Supported TIDL layer type ---          Resize -- /unpool10/Resize
    Supported TIDL layer type ---            Conv -- /conv11/conv_layer/Conv
    Supported TIDL layer type ---            Relu -- /conv11/Relu
    Supported TIDL layer type ---          ArgMax -- postproc_argmax
    Supported TIDL layer type ---            Cast -- postproc_cast
    

    10_00_06_00的相关编译片段:

    Unable to find initializer at index - 1 for node /unpool6/Resize
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Resize,  Node name - /unpool6/Resize -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Conv,  Node name - /conv6/Conv -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Add,  Node name - /Add -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Conv,  Node name - /conv6_7/conv_layer/Conv -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Relu,  Node name - /conv6_7/Relu -- [tidl_onnxRtImport_core.cpp, 524]
    Unable to find initializer at index - 1 for node /unpool7/Resize
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Resize,  Node name - /unpool7/Resize -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Conv,  Node name - /conv7/Conv -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Add,  Node name - /Add_1 -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Conv,  Node name - /conv7_8/conv_layer/Conv -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Relu,  Node name - /conv7_8/Relu -- [tidl_onnxRtImport_core.cpp, 524]
    Unable to find initializer at index - 1 for node /unpool8/Resize
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Resize,  Node name - /unpool8/Resize -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Conv,  Node name - /conv8/Conv -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Add,  Node name - /Add_2 -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Conv,  Node name - /conv8_9/conv_layer/Conv -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Relu,  Node name - /conv8_9/Relu -- [tidl_onnxRtImport_core.cpp, 524]
    Unable to find initializer at index - 1 for node /unpool9/Resize
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Resize,  Node name - /unpool9/Resize -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Conv,  Node name - /conv9/conv_layer/Conv -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Relu,  Node name - /conv9/Relu -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Add,  Node name - /Add_3 -- [tidl_onnxRtImport_core.cpp, 524]
    Unable to find initializer at index - 1 for node /unpool10/Resize
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Resize,  Node name - /unpool10/Resize -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Conv,  Node name - /conv11/conv_layer/Conv -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Relu,  Node name - /conv11/Relu -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - ArgMax,  Node name - postproc_argmax -- [tidl_onnxRtImport_core.cpp, 524]
    [TIDL Import] [PARSER] SUPPORTED: Layers type supported by TIDL --- layer type - Cast,  Node name - postproc_cast -- [tidl_onnxRtImport_core.cpp, 524]
    

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

    我更新到了10_00_08_00、将我的设置迁移到了新的 model_configs.py 配置并重新编译了。  仍然看到了一个挂起。

    然后、我从我的配置中注释掉了"advanced_options:quantization_scale_type":4、它已重建并重新部署。  我的模型不再在目标上挂起。  但是、它会产生可怕的结果、因此我需要该选项来发挥作用。

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

    大家好、我会在10月21日(星期一)的发展会议上提出这个问题、并向大家介绍最新的讨论情况。  这可能是一个错误。

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

    下面是另一个数据点: 在为模型编译定义了 quantization_scale_type:4的10_00_06_00下、如果我从工件中删除 allowedNode.txt 文件并在 AM68-SK 上运行推理、它不会暂停。  显然,没有什么是卸载到 MMA 的,但它可以运行.. 不过非常缓慢。

    我还尝试了运行由 edgeai-benchmark 生成的 ss-8740工件、该工件似乎启用了 quantization_scale_type:4。  这 在 AM68-SK 上不会挂起。  我不知道什么是独特的关于我的模型显然是导致问题.

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

    大家好、TS、我向开发团队展示了您的调查结果、他们正在对此进行研究。   

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

    Chris、

    感谢您的更新!  

    我假设 目标上的底层 libtidl_onnxrt_EP 等是闭源代码?  换句话说、最终用户无法通过重新编译来调试/跟踪内容?

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

    大家好、TS 是的、TIDL 库是闭源代码。   BTW 感谢您出色的调试。   

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

    Chris、

    我很乐意提供帮助!

    更多数据点:

    1) 1)我禁用了 quantization _scale_type 配置并设置 tensor_bits:16。  以前、使用较旧的 edgeai-tidl-tools 09_02_06_00将 tensor_bits 设置为16会导致我的模型无法编译(请参阅 https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1355176/am68a-memory-error-when-compiling-with-tensor_bits-16/5171217)。  使用 SDK 10和10_00_06_00、我可以编译并获得良好的主机结果。  但是、此编译在 AM68-SK 上挂起。

    2) 2)如果我让 tensor_bits 保持未定义状态(默认为8)、并且没有定义任何16位层并且尚未设置 quantization _scale_type:4、则这会在 AM68-SK 上挂起。  这与我上面描述的先前运行类似、但我想在此处包含它以保持完整性。

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

    供参考--

    在尝试隔离有问题的图层时、我尝试在配置中定义了"dny_list:layer_type":"Resize"。  当我执行此操作并调用"python3 ./python3 onnxrt_ep.py -m ss-ort-800k-model-pref-and-post f1 --compile"时、我遇到以下错误:

    ==================== [Optimization for subgraph_0 Started] ====================
    
    ----------------------------- Optimization Summary -----------------------------
    --------------------------------------------------------------------------------
    |         Layer         | Nodes before optimization | Nodes after optimization |
    --------------------------------------------------------------------------------
    | TIDL_BatchNormLayer   |                         4 |                        3 |
    | TIDL_ReLULayer        |                        18 |                        0 |
    | TIDL_ConvolutionLayer |                        59 |                       59 |
    | TIDL_EltWiseLayer     |                        20 |                       18 |
    | TIDL_CastLayer        |                         1 |                        0 |
    | TIDL_PoolingLayer     |                         1 |                        1 |
    --------------------------------------------------------------------------------
    
    =================== [Optimization for subgraph_0 Completed] ===================
    
    The soft limit is 10240
    The hard limit is 10240
    MEM: Init ... !!!
    MEM: Init ... Done !!!
     0.0s:  VX_ZONE_INIT:Enabled
     0.9s:  VX_ZONE_ERROR:Enabled
     0.11s:  VX_ZONE_WARNING:Enabled
     0.2559s:  VX_ZONE_INIT:[tivxInit:190] Initialization Done !!!
    ============= [Quantization & Calibration for subgraph_0 Started] =============
    
    terminate called without an active exception
    

    此时、编译挂起、我需要按 Ctrl-C 恢复控制台。

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

    哇哦!  谢谢你。  已将 您的调试转发给我们的开发团队。

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

    开发团队对此有任何更新?

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

    我在上星期一为开发团队提供了您的帖子。  今天8点30分、我与开发团队有一个 CCB、并将提出这个问题。   

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

    我在上星期一为开发团队提供了您的帖子。  今天8点30分、我与开发团队有一个 CCB、并将提出这个问题。   

    截至10月28日@1500进行了更新。  TIDL 开发团队得以重现您的问题、并生成了错误报告。  TIDL 将在11月底推出新的版本。  该版本中应包含此修复程序。

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

    这是个好消息!  谢谢!  如果您需要早期的测试仪、请告诉我。

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

    Chris、

    您提到开发团队能够 重现我的问题。  您能否说明以上所述的多个问题已经重复出现?

    1) 1)当我 将 quantization_scale_type 设置为4时、我的模型在开发板上挂起。   

    2) 2)如果我将 tensor_bits 设置为16、则我的模型在开发板上挂起。

    3)我看到调整初始化程序未找到警告。

    4)如果我定义了"拒绝列表"参数,我会遇到一个异常。

    谢谢。

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

    大家好、TS、我在 Jira 中包含了您的所有评论。  并且 会在 Jira 关闭之前进行审核。

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

    Tim、您好!

    只是为了更新您的信息、 10.1版本已延迟到12月13日。

    Chris

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

    Tim、您好!

    SDK 10.1将于2024年12月13日发布。   SDK 11.0将于2025年3月发布。  您的列表已提供给开发团队、*我认为*这些列表将在10.1中确定。  如果它们仍然存在、也许我们可以一起调试、我将与 Dev 团队合作解决这些问题。  另外、我将在下周参加比赛+但仍将回到第17位。

    Chris

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

    Tim、您好!

    我刚从今天离开回来,部分发布在13日。  明天/星期四应该有另一个更新。  对于延迟、我们深表歉意。

    Chris

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

    发布版本可用。

    在 ti.com!!上安装 SDK v10.1.0

    此致、

    Chris

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

    Tim、您好!

    从您的消息:

    SDK 10.01.00.04似乎有两个问题:

     

    • 如果我使用 Yocto 从零开始构建平台(am68-SK)、那么在目标上的 edgeai-tidl-tools/中运行默认模型会失败(具体来说、在"python3 .tools"/scripts/gen_test_report.py 步骤上)。  我不确定启动了什么、但我在/usr/lib 路径下的文件中看到了几个 md5sum 校验和差异、而我看到了我是否使用预构建的 tisdk-edgeai-image-j721s2-evm.wic.xz 进行编程。  我希望我的 Yocto 编译和预编译映像具有相同的编译库。  有关捕获结果、请参阅随附的。  "nfs-lib.txt"文件是我的版本。  "uSD-lib.txt"来自预构建的映像。  我猜整个平台上其他二进制文件的差异可能会更大。
    • 我的模型使用 edgeai-tidl-tools "rel_10_01"分支在 x86_64平台上进行量化和执行正常。  如果我在目标上的预编译映像下运行内容、它仍会挂起在我在 E2E 上的原始线程中报告的相同位置。

    我可以处理第二个项目;第一个项目可能是构建团队问题、我看到 Lenio 已经为该问题创建了一个 Jira (LCPD-40110)。  关于第二项、请将您使用的型号发送给我。   如果您不想分享您经过训练的模型、它可能具有随机权重。

    我将回复您的邮件、以便您直接将其发送给我。

    Chris

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

    Tim、您好!

    我能够在您的环境中成功运行这两个模型。  它针对 AM69A [超集器件]与主机仿真一起运行。  我使用超集器件、因为硬件几乎是相同的、而且我 遇到的任何问题都与软件相关、而不是与硬件相关。   如果 am68a 不起作用、我们可以讨论一下。   我是通过从您的 edge-tidal-tools 目录开始执行该操作的。  然后创建 Docker 映像并根据 https://github.com/TexasInstruments/edgeai-tidl-tools/blob/master/docs/advanced_setup.md 进行设置。  最后 在 osrt_python 下运行模型。  我 可以让 Lenio 通过 Box 向您发送我的 Docker 映像(它是7G、太大、无法在此处发布)。  我们可以讨论如何通过手机对其进行设置。  但基础知识如下:

    用弹弓弹球

    docker load -i deere_image.tar

    cd to the edgeai-tidl-tools directory you tarred up for me.

    save the .bashrc file

    sudo docker run -it --rm --shm-size=4096m --mount source=$(pwd),target=/home/root,type=bind deere

    cd /home/root
    . .bashrc

    cd examples/osrt_python/ort

    python3 ./onnxrt_ep.py -c -m 224_vit_depth_model-c-simp

    e2e.ti.com/.../compile_5F00_224_5F00_vit_5F00_depth_5F00_model_2D00_c_2D00_simp.txte2e.ti.com/.../compile_5F00_800k_5F00_model_5F00_f1_5F00_pre_5F00_and_5F00_post_2D00_rand.txte2e.ti.com/.../run_5F00_800k_5F00_model_5F00_f1_5F00_pre_5F00_and_5F00_post_2D00_rand.txte2e.ti.com/.../run_5F00_224_5F00_vit_5F00_depth_5F00_model_2D00_c_2D00_simp.txte2e.ti.com/.../.bashrc

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

    Tim、您好!

    我可以重复此问题、并创建了 Jira TIDL-7112。   我将询问周一 CCB 的状态。

    Chris

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

    您好、Chris、我们发现了此问题、现已解决。  

    将在下一版本中提供。  

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

    谢谢你、Vijay!!!  我将保持这个打开状态、直到 Tim 得到补丁并对其进行测试。

    此致、

    Chris

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

    其他一些详细信息

    根本原因: 当网络包含7x7 DWS 卷积层并且精度混合时、就会出现该问题。  在9.2之前、以每组作为 单独的处理块来处理此类层(7x7 DWS)。  该优化应用于将所有组作为单个处理块进行处理、但该优化不能 应用于混合精密情况。 意外、它也适用于导致此问题的混合精度案例。 我们最终完成了整流和测试

    修复程序的可用性: 它将在计划于2025年4月发布的下一版本11.0中得到修复、但我们将在2025年1月底之前提供补丁发布

    谢谢!
    此致、

    Pramod

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

    Tim、您好!

    我以前看到过一封电子邮件。  现在可以开始该主题吗?

    Chris

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

    Chris、

    有。  我已获得修复程序并已确认我的模型不再挂起。  我将继续、把它标记为已解决。

    谢谢!