通过nuget 加载了microsoft.ml.onnxruntime.gpu(1.15.1)和microsoft.ml.onnxruntime.managed(1.15.1)包,当程序执行这一步时直接退出,输出窗口无任何提示
IDisposableReadOnlyCollection<DisposableNamedOnnxValue> result = _inferenceSession.Run(inputs);
查找资料:
1、microsoft.ml.onnxruntime和microsoft.ml.onnxruntime.gpu包不能在一个项目中同时存在,试了还是不行
2、使用 Dependency查找onnxruntime_providers_cuda.dll的依赖项,依然不行
3、按照提示在程序中插入
so.LogSeverityLevel = OrtLoggingLevel.ORT_LOGGING_LEVEL_VERBOSE;
在控制台上输出日志提示,终于找到原因,缺少 zlibwapi.dll 文件。下载该文件并放入CUDA的bin中,程序正常运行。