[英]Using ML.net with an ONNX model and GPU
如何使用 C# 让 Microsof.tML 在 NVDIA GPU 上运行? 我按照说明操作
https://github.com/do.net/machinelearning/blob/master/docs/api-reference/tensorflow-usage.md
我的管道如下所示。 所有版本依赖项(onnxruntime.gpu、Microsoft.ML 等)都是 1.5.2,因此应该支持,但我得到异常 DllNotFoundException:无法加载 DLL 'onnxruntime' 或其依赖项之一:找不到指定的模块 -是的,onnxruntime 确实出现在已安装的 nuget 软件包列表中。
有没有人让这个工作? 该文档仍然非常稀疏,似乎没有任何在线工作示例。
var pipeline = context.Transforms.ResizeImages(
resizing: ImageResizingEstimator.ResizingKind.Fill,
outputColumnName: "image", imageWidth: ImageSettings.imageWidth,
imageHeight: ImageSettings.imageHeight,
inputColumnName: nameof(ModelInput.Image)
)
.Append(context.Transforms.ExtractPixels(outputColumnName: "image"))
.Append(context.Transforms.ApplyOnnxModel(
modelFile: "./ObjectDetection/tinyyolov2-8.onnx",
outputColumnName: "grid",
inputColumnName: "image",
gpuDeviceId:0)
);
好的 - 回答我自己的问题的形式不好,但上面说您必须使用 Cuda 10 的链接似乎不准确。 如果您使用的是 ML.net 1.5 nuget 版本,则需要 Cuda 10.2。
除非您从源代码构建(并且谁有时间),否则 11 将无法工作。
希望这能解决它,但如果您要发表评论,请也这样做!
这是兼容性图表。 较新的版本具有不同的兼容性。
CUDA Execution Provider 在支持 Nvidia CUDA 的 GPU 上启用硬件加速计算:
https://onnxruntime.ai/docs/execution-providers/CUDA-ExecutionProvider.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.