主题中讨论的其他器件:AM69A
工具/软件:
我已经编译并运行推理时间 IResNet101模型与 TIDL 但看起来像问题推理时间,请帮助我检查它。
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.
工具/软件:
我已经编译并运行推理时间 IResNet101模型与 TIDL 但看起来像问题推理时间,请帮助我检查它。
尊敬的 Christina:
我将文件日志发送到文件夹/opt/edge-tidl-tool/model-artifact。
请帮我检查一下。 谢谢你
drive.google.com/.../view
尊敬的 Christina Kuruvilla:
当我运行 IResnet check 推理时间当 Docker 时,它是日志。
请帮我检查一下。 谢谢你
drive.google.com/.../view
Hi Le Tung,
我再次检查过、您对推理的时间为微秒[μ μs ]、而不是毫秒[毫秒](正如我在过去的 E2E 中错误地告知您的那样)道歉、因为我记得用于基准测试的模型运行时单位、而不是本例中的时间单位。
对我来说一切都很好。 您的目标运行时间是多久? 当模型运行到 TIDL 时、会收到一些警告、您可以对这些警告进行优化、以便在 TIDL 上更好地运行。
此致、
Christina
你好 Christina Kuruvilla ,
当运行我们自我训练的重新网络101模型时、推理时间结果为538微秒。 但在运行 facenet 模型时、与其他模型相比、推理时间结果过于优化。
您能给我提供这个推理时间单位的文档链接吗?
你好 Christina Kuruvilla ,
由于模型工件路径不正确、我之前在 ARM 内核上运行模型。 更新工件路径后、我现在在执行过程中遇到以下错误:
TIDL_RT_OVX:错误:验证 TIDL 图形...失败!!!
您能否请在您的终端重新运行模型并与我共享完整的推理日志? 让您的日志输出有助于我们更有效地诊断问题。
提前感谢您的帮助。
此致、
一条道
您好!
我在 PC 上的 OSRT 中的 advance_examples 下运行这些协议。 advanced_examples 创建一个随机数据来测试模型。 我添加了编译和推理以供您参考。 它在设备上看起来稍有不同、但请发送您的输入以及在设备上运行输入的方式(如果可能)。
此致、
Christina
e2e.ti.com/.../arrow_5F00_advanced_5F00_examples_5F00_compiling.txte2e.ti.com/.../arrow_5F00_advanced_5F00_examples_5F00_inference.txt
尊敬的 Christina:
感谢您advanced_examples
在 PC 上共享 OSRT—我非常感激您能同时拥有编译日志和推理日志以供参考。
我的同事董先生和我正在研究 AM69A 评估套件。 当我执行与董先生相同的工作流程时、日志会确认模型完全在 ARM 内核上运行、如上面的屏幕截图所示。
为了使示例适应我们的设置、我只修改了onnxrt_ep.py
文件、并更新了:
以便运行时可以找到allowedNode.txt
文件。 但是、在调用 TIDL 提供程序后、运行会失败、表现为:
TIDL_RT_OVX: ERROR: Verifying TIDL graph ... Failed !!!
您能尝试advanced_examples
在 AM69A 器件上运行、并分享您的日志或任何见解吗? 在诊断此 TIDL 验证失败时、您的帮助将非常宝贵。
尊敬的 Christina:
我 在下面运行 mr.an 的模型 resnet101时的附加日志
尊敬的 AN 和 Le:
您是否在 /edgeai-tidl-tools/examples/osrt_python/advanced_examples/unit_tests_validation 中的 common_utils 下设置了模型详细信息?
此外、您是否有正在使用的模型的输入文件? 如果您有输入文件、建议使用 /edgeai-tidl-tools/examples/osrt_python/ort
为了获得最佳数据、因为 advanced_examples 仅用于测试兼容性目的、而不是准确性。 如果您可以发送输入文件、我可以在 AM69A 器件上对其进行测试、以检查您可能遇到问题的位置。
此致、
Christina
您好 Christina
https://drive.google.com/file/d/1iBooIewlHdXRZr-0d6C2vM0slaY9TnYE/view?usp=sharing
此链接包含输入文件。
谢谢、
尊敬的 Le:
我想我遇到了您提到的工件文件夹问题。 这是我收到的输出
Available execution providers : ['TIDLExecutionProvider', 'TIDLCompilationProvider', 'CPUExecutionProvider']
Running 1 Models - ['arrow']
Running_Model : arrow
[WARNING] The run might fail for transformer/convnext networks, user will have to modify the strict to set graph_optimization_level to DISABLE_ALL in session.
libtidl_onnxrt_EP loaded 0xad959a0
EP Error /root/onnxruntime/onnxruntime/core/providers/tidl/tidl_execution_provider.cc:94 onnxruntime::TidlExecutionProvider::TidlExecutionProvider(const onnxruntime::TidlExecutionProviderInfo&) status == true was false.
when using ['TIDLExecutionProvider', 'CPUExecutionProvider']
Falling back to ['CPUExecutionProvider'] and retrying.
Completed model - resnet101.onnx
Name : arrow , Total time : 538.19, Offload Time : 0.00 , DDR RW MBs : 0
ERROR : artifacts_folder not a directoryroot
在尝试以示例运行模型时、编译需要很长时间。 我仍在努力确定这种情况以及工件文件夹问题。 我可以尝试通过 TIDLRT 直接在 tidl_tools 下运行模型、因为随后将使用 TIDLExecution 而非 CPU。 如果您希望并行处理它、则可以通过 jupyter 笔记本执行该文档:
我将继续向大家介绍最新进展情况。
此致、
Christina
您好:
您可以尝试在电路板上进行以下更改吗?
/run/media/BOOT-mmcblk1p1/uEnv.tx 下
如果 name_overlays 行设置为
name_overles=ti/k3-j784s4-edgeai-apps.dtbo
请将其更改为
name_coverles=ti/k3-j784s4-edgeai-apps.dtbo ti/k3-am68-sk-v3link-fusion.dtbo ti/k3-v3link-imx219-0.dtbo
如果您继续在 OSRT 下运行时遇到问题、则第二种方法是使用运行这些功能。
请告诉我、当发生这种情况时、错误会发生什么情况。
此致、
Christina
大家好!
我附上了成功导入和推理所需的导入和推理文件、这些文件是我在调试会话中介绍的 resnet101模型。 这假定您已设置 edgeai-tidl-tools、并已成功运行"源设置".sh。
第一步是在 edgeai-tidl-tools/下制作 arrow/E2E 1491952/、并将 resnete101.onnx 模型复制到 arrow/E2E 1491952/。 然后 cd 进入 edgeai-tidl-tools/tidl_tools、将 import_resnet101_host 复制到 tidl_tools、运行 mkdir out/、并运行"./tidl_model_import.out import_resnet101"。 这将编译模型并将工件放入/中。
一旦有了工件、就可以运行:
tidl_tools#./PC_dsp_test_dl_algo.out s:generation_resnet101_host
这将在 PC 上以仿真模式执行模型。
在器件上、创建一个/opt/arrow 目录。
从 tidl_tools/中、通过 scp -r out root@将 out 文件夹复制到/opt/arrow /opt/arrow
然后 通过 scp intrusion_resnet101 root@将 jet.bmp 和 intrusion_resnet101复制到/opt/arrow /opt/arrow 和 CP jet.bmp root@ /opt/arrow
最后、通过 SSH 连接到设备、通过 CD 连接到/opt/arrow. 然后在器件上运行:
Root@AM69-SK:/opt/arrow ../tidl_test/TI_DEVICE_ARMv8_test_dl_algo_host_rt.out s:imgation_resnet101
zip 文件中包含我在调试会话中使用的生成的二进制文件。 除了作为参考之外、不需要它。
e2e.ti.com/.../inference_5F00_resnet101_5F00_hoste2e.ti.com/.../import_5F00_resnet101e2e.ti.com/.../inference_5F00_resnet101e2e.ti.com/.../device.zip
此致、
Chris
尊敬的 Christina:
我已经为您逐步执行了操作、但在您重新启动之前、问题仍然存在
它的日志当我遵循指南为你,我尝试重新启动设备,但不更新 env ,请帮我检查它。
drive.google.com/.../view
您好、
我怀疑 SD 卡映像有问题。 这将处理10.01的.wic 文件(位于 https://www.ti.com/tool/download/PROCESSOR-SDK-LINUX-AM69A /10.01.00.05)。 是否使用.wic 文件来创建 SD 卡? 另一个要尝试的方法是通过以下方式初始化 OpenVX 环境:
root@ j7-evm:~# cd /opt/vision_apps
root@ j7-evm:~# source ./vision_apps_init.sh
root@ j7-evm:/opt/tidl_test# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib
Before running inference.
regards,
Chris
尊敬的 Christina:
我按照与resnet101.onnx
示例中相同的过程导入定制训练的yolov8s.onnx
模型。 但是、在使用导入过程中、我遇到了以下错误日志tidl_model_import.out
:
这是指向 YOLOv8s 模型的链接、该模型在套件上运行成功、但当前在 CPU 上运行100%。
drive.google.com/.../view
您能帮助我们了解这些错误的原因以及如何解决这些错误吗?
2、要求从源代码构建进行评估:
我注意到、您的指南通常侧重于使用预构建的可执行文件以及用于推理的输入文件。 但是、我们的目标是从源代码构建工具链、以便我们可以集成除推理时间之外的其他评估、例如精度和自定义指标。
您能指导我们如何从源头正确构建必要的组件、从而满足这些需求吗?
尊敬的 Christina:
衷心感谢您的支持、帮助我resnet101.onnx
在 AM69A 电路板上成功运行模型。
我已经创建了一个关于 YOLOv8s 模型的新案例,请帮助我检查它。
e2e.ti.com/.../processor-sdk-am69a-processor-sdk-am69a-issue-deploying-custom-yolov8s-model-self-trained-on-am69a-with-tidl
谢谢和最好的摄政