OnnxRuntime – 模型部署笔记1,OnnxRuntime简介
OnnxRuntime模型部署笔记系列:
1 Onnx Runtime
Onnx Runtime 官网:https://onnxruntime.ai/
Onnx Runtime Github:https://github.com/microsoft/onnxruntime
Onnx Runtime 文档:https://onnxruntime.ai/docs/
Onnx Runtime是一个跨平台的推理和训练机器学习加速器,可以将onnx模型,通过不同的编程语言比如Python、C、C++、C#、Java、JavaScript、Objective-C等编程语言部署到不同的平台,如Windows、Mobile、Web等环境中。Onnx Runtime兼容不同的硬件、驱动程序和操作系统,并在适用的情况下利用硬件加速器以及图形优化和转换提供推理和训练的最佳性能。
Onnx Runtime使用如何进行工作的?
Onnx Runtime以开放、通用的机器学习文件格式onnx作为基础模型文件格式,onnx模型已得到Pytorch、Tensorflow/Keras、TFLite、scikit-learn、Caffe2等框架支持,所以当我们使用Pytorch等机器学习框架训练完模型之后,然后将各个框架的模型导出为onnx模型,然后就可以使用Onnx Runtime加载onnx模型进行推理。
Onnx Runtime在对Onnx模型进行推理已支持多个Execution Providers类型,比如:
- CPU(Default)
- NVIDIA CUDA
- NVIDIA TensorRT
- Intel OpenVINO
- Intel oneDNN
- Windows DirectML
- Qualcomm SNPE
- Android NNAPI
- Apple CoreML
- XNNPACK
- AMD MIGraphX
- AMD ROCm
- Cloud Azure
截止到写文章时,Onnx Runtime已经支持以下的Execution Providers,
这里值得注意的是华为的CANN已经进入到预览版本,估计在下一个大版本就会得到正式的支持。
ONNX Runtime 通过其可扩展的执行提供程序(EP) 框架与上述不同的硬件加速库一起工作,以在硬件平台上优化执行 ONNX 模型。
本文作者:StubbornHuang
版权声明:本文为站长原创文章,如果转载请注明原文链接!
原文标题:OnnxRuntime – 模型部署笔记1,OnnxRuntime简介
原文链接:https://www.stubbornhuang.com/2546/
发布于:2023年03月20日 16:55:49
修改于:2023年06月21日 17:03:29
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论
51