Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

使用NeuralNetworkDetect时会闪退 #410

Open
Suxiaobai666 opened this issue Nov 9, 2024 · 21 comments
Open

使用NeuralNetworkDetect时会闪退 #410

Suxiaobai666 opened this issue Nov 9, 2024 · 21 comments

Comments

@Suxiaobai666
Copy link

#281 的情况类似,但是将roi更改成640*640后,运行仍然会闪退

cmd中报错如下:
2024-11-09 20:43:51.0123902 [E:onnxruntime:, inference_session.cc:2045 onnxruntime::InferenceSession::Initialize::<lambda_3186bf89b37bdbb73b2e0b1021d3b1f4>::operator ()] Exception during initialization: D:\a\MaaDeps\MaaDeps\vcpkg\buildtrees\maa-onnxruntime\src\v1.18.0-62a0bffd6f.clean\onnxruntime\core\providers\dml\DmlExecutionProvider\src\AbiCustomRegistry.cpp(519)\onnxruntime_maa.dll!00007FFE6817D717: (caller: 00007FFE681AFE3F) Exception(4) tid(1208) 80070057 ?

附上debug
maa.log

@MistEO
Copy link
Member

MistEO commented Nov 9, 2024

发完整的日志,不要截取的。

模型和 pipeline json 也都发一下

@Suxiaobai666
Copy link
Author

发完整的日志,不要截取的。

模型和 pipeline json 也都发一下

model.zip
maa.log
my_task.json

@Suxiaobai666
Copy link
Author

发完整的日志,不要截取的。

模型和 pipeline json 也都发一下

我发的这些东西没错没少吧

@MistEO
Copy link
Member

MistEO commented Nov 11, 2024

我用你的模型和 task 跑了一下,没有复现崩溃问题

你贴的 cmd 中的报错是 dml 相关,也就是 GPU 加速相关的,可能只有特定的显卡上能复现这个问题(?,这几天我再多找几个电脑试一下

一个临时的解决方案是你先把 maafw 的 GPU 加速关掉:

@Suxiaobai666
Copy link
Author

我用你的模型和 task 跑了一下,没有复现崩溃问题

你贴的 cmd 中的报错是 dml 相关,也就是 GPU 加速相关的,可能只有特定的显卡上能复现这个问题(?,这几天我再多找几个电脑试一下

一个临时的解决方案是你先把 maafw 的 GPU 加速关掉:

我的GPU是2060s,今天有空的时候我去把GPU加速关了试一下吧,顺便在录个视频展示一下我的报错是如何产生的

@Suxiaobai666
Copy link
Author

本来录个视频想呈现一下报错的过程,我用的是N卡自带的录屏,发现在启动程序之后,录屏画面会不停闪烁,效果见下视频
所以我就在想,是不是我显卡驱动的问题呢

Desktop.2024.11.11.-.17.45.12.01.3.mp4

@Suxiaobai666
Copy link
Author

刚刚去把GPU加速关了试了一下,还是不行(待会再去更新一下显卡驱动试一试吧)

Desktop.2024.11.11.-.22.52.55.04.mp4

maa.log

@Suxiaobai666
Copy link
Author

刚刚去更新了显卡驱动,而且把代码改了回来,还是会报一样的错误
maa.log

@Windsland52
Copy link
Member

Windsland52 commented Nov 11, 2024

有个例子 MaaXYZ/M9A#242 ,还有另一个相同例子的log
MAA.log,出错任务是 "LimboStageLightest_1""LimboStageLightest_2"

@MistEO
Copy link
Member

MistEO commented Nov 12, 2024

刚刚去把GPU加速关了试了一下,还是不行(待会再去更新一下显卡驱动试一试吧)

Desktop.2024.11.11.-.22.52.55.04.mp4
maa.log

这个 log 中没有搜到 set_cpu,是不是改的不对?

@Suxiaobai666
Copy link
Author

刚刚去把GPU加速关了试了一下,还是不行(待会再去更新一下显卡驱动试一试吧)
Desktop.2024.11.11.-.22.52.55.04.mp4
maa.log

这个 log 中没有搜到 set_cpu,是不是改的不对?

好像确实是没改对,刚刚去重新改了一下,可以识别了,谢谢啦

@Suxiaobai666
Copy link
Author

现在还有一个问题,我之前不是已经调整过用CPU去跑模型了吗,现在打包成MaaPiCli.exe又会直接闪退,请问这个要怎么解决呢?
顺便在问一个问题,onnx的模型我是从pytorch上转换过来的,但是部署到maa中识别的精度相差好大(原本pt是可以识别出来的,但是onnx就识别不出来),请问这个要怎么解决呢
谢谢啦

@MistEO
Copy link
Member

MistEO commented Nov 14, 2024

现在打包成MaaPiCli.exe又会直接闪退,请问这个要怎么解决呢?

闪退是 onnxruntime 加载模型的时候就炸了,甚至还没到推理阶段,暂时不知道原因,我换了几台设备都没有复现,目前的信息就只有你发的 cmd 里的报错,是 onnxruntime 打印的,我查了下好像和模型格式有关系,你也可以再查一下研究一下

cmd中报错如下:
2024-11-09 20:43:51.0123902 [E:onnxruntime:, inference_session.cc:2045 onnxruntime::InferenceSession::Initialize::<lambda_3186bf89b37bdbb73b2e0b1021d3b1f4>::operator ()] Exception during initialization: D:\a\MaaDeps\MaaDeps\vcpkg\buildtrees\maa-onnxruntime\src\v1.18.0-62a0bffd6f.clean\onnxruntime\core\providers\dml\DmlExecutionProvider\src\AbiCustomRegistry.cpp(519)\onnxruntime_maa.dll!00007FFE6817D717: (caller: 00007FFE681AFE3F) Exception(4) tid(1208) 80070057 ?

然后这个应该是个例问题,我在群里问了下好像都没人遇到,所以你的 MaaPiCli 可以直接发版,仍然默认使用 GPU。遇到闪退问题的用户手动把 config/maa_pi_config.json 里的 gpu 字段改成 -2 就行了(这样就会去用 CPU 了)

@MistEO
Copy link
Member

MistEO commented Nov 14, 2024

onnx的模型我是从pytorch上转换过来的,但是部署到maa中识别的精度相差好大(原本pt是可以识别出来的,但是onnx就识别不出来),请问这个要怎么解决呢

你试试在 python 那边用 onnxruntime 写一个推理 demo,看看结果和 torch 的有区别吗?先确定下是模型转换的问题,还是 onnxruntime 的问题,还是 maafw 的问题

@Suxiaobai666
Copy link
Author

现在打包成MaaPiCli.exe又会直接闪退,请问这个要怎么解决呢?

闪退是 onnxruntime 加载模型的时候就炸了,甚至还没到推理阶段,暂时不知道原因,我换了几台设备都没有复现,目前的信息就只有你发的 cmd 里的报错,是 onnxruntime 打印的,我查了下好像和模型格式有关系,你也可以再查一下研究一下

cmd中报错如下:
2024-11-09 20:43:51.0123902 [E:onnxruntime:, inference_session.cc:2045 onnxruntime::InferenceSession::Initialize::<lambda_3186bf89b37bdbb73b2e0b1021d3b1f4>::operator ()] Exception during initialization: D:\a\MaaDeps\MaaDeps\vcpkg\buildtrees\maa-onnxruntime\src\v1.18.0-62a0bffd6f.clean\onnxruntime\core\providers\dml\DmlExecutionProvider\src\AbiCustomRegistry.cpp(519)\onnxruntime_maa.dll!00007FFE6817D717: (caller: 00007FFE681AFE3F) Exception(4) tid(1208) 80070057 ?

然后这个应该是个例问题,我在群里问了下好像都没人遇到,所以你的 MaaPiCli 可以直接发版,仍然默认使用 GPU。遇到闪退问题的用户手动把 config/maa_pi_config.json 里的 gpu 字段改成 -2 就行了(这样就会去用 CPU 了)

哦哦对,上面还有要改MaaPiCli.exe的里面的东西,我忘记了,不好意思哈

@Suxiaobai666
Copy link
Author

onnx的模型我是从pytorch上转换过来的,但是部署到maa中识别的精度相差好大(原本pt是可以识别出来的,但是onnx就识别不出来),请问这个要怎么解决呢

你试试在 python 那边用 onnxruntime 写一个推理 demo,看看结果和 torch 的有区别吗?先确定下是模型转换的问题,还是 onnxruntime 的问题,还是 maafw 的问题

好的好的,我去试试哈

@MistEO
Copy link
Member

MistEO commented Nov 14, 2024

microsoft/onnxruntime#18885 (comment)

我找到了这里有一个同样的问题,试试有没有用,maafw 的 gpu 加速用的就是 DML

@Suxiaobai666
Copy link
Author

microsoft/onnxruntime#18885 (comment)

我找到了这里有一个同样的问题,试试有没有用,maafw 的 gpu 加速用的就是 DML

待会有空就去试试哈,谢谢啦!!!(搞这些东西还不是很熟悉,做的没这么快,不好意思哈)

@MistEO
Copy link
Member

MistEO commented Dec 7, 2024

beta 版本更新了一下 DML,试试有用吗

@Suxiaobai666
Copy link
Author

beta 版本更新了一下 DML,试试有用吗

最近要期末考了,可能时间没那么多,等闲下来再试试吧,麻烦你了哈

@Windsland52
Copy link
Member

m9a这边之前开gpu加速有问题的,刚刚试已经没有问题了

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants