session->Run时遇到的问题

在运行session->Run遇到的问题,没有发现哪里有错误,但是就是出现了错误。

先把问题记录下来,

这是在用VS2017,运行yolov10的onnx模型的C++代码,用到了onnxruntime库。

程序在运行到global_session->Run的时候会出现两种错误情况,

一、可以直接运行这个程序中的tflite模型,但onnx模型的错误直接跳过,在控制台的输出是下面的错误代码,但可以运行整个程序,除了onnx模型。无论更换onnxruntime库的版本,出现的都是这样的错误。


2024-12-06 13:33:02.5771754 [E:onnxruntime:, sequential_executor.cc:516 onnxruntime::ExecuteKernel] Non-zero status code returned while running Conv node. Name:'/model.0/conv/Conv_output_0_nchwc' Status Message: D:\a\_work\1\s\include\onnxruntime\core/common/logging/logging.h:367 onnxruntime::logging::LoggingManager::DefaultLogger Attempt to use DefaultLogger but none has been registered.

二、是运行到global_session->Run的时候,程序会中断

但是我检查一下global_session->Run的这一段代码,我觉得又没有什么问题。

output_tensors = global_session->Run(Ort::RunOptions{nullptr},
                                            input_names.data(),   // images
                                            input_tensors.data(), // 1*3*640*640
                                            input_tensors.size(), // 1
                                            output_names.data(),  // output0
                                            output_names.size()); // 1

想解决问题,但是还没找到解决问题的办法。那就先准确的记录、描述问题,以待解决时机。

然后在Google上搜寻相关的解决办法,大概找到了下面几个,先贴上来,以防后面又找不到了

第一种问题的相似问题:

1、Non-zero status code returned while running DmlFusedNode_0_0 node #863

https://github.com/microsoft/onnxruntime-genai/issues/863

2、Non-zero status code returned while running Softmax node #15255

https://github.com/microsoft/onnxruntime/issues/15255

第2个相似问题的解决办法是,在程序的exe同文件夹下,放入1.8.0版本以下的directml.dll文件,但是我搜了一下,没找到1.8.0版本以下的directml.dll文件,就在这个路径下,下载了第一个directml.dll文件放在了程序exe的同文件夹下,这个时候,不报第一种错误了,报了第二种错误。

directml.dll free download | DLL‑files.com

第二种问题的相似问题:

1、Exception thrown: read access violation. this was 0xFFFFFFFFFFFFFFFF. #7570
Exception thrown: read access violation. this was 0xFFFFFFFFFFFFFFFF. · Issue #7570 · ultralytics/ultralytics · GitHub

不过这个帖子下面好像没有实质性的解决方案。

------------------------------------------------------------------------------

还有个20241205搜到的解决方案

onnxruntime.capi.onnxruntime_pybind11_state.Fail: [ONNXRuntimeError] : 1 : FAIL : Non-zero status code returned while running BatchNormalization node · Issue #3166 · microsoft/onnxruntime · GitHub

这个方法大致是用cuda来运行,我现在是只在cpu上运行,也许我应该启动cuda试一下。

记录问题,分析问题的解决方向,尝试解决问题

20241206

--------------------------------------------------------------------------

有时候还会报出这个错误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值