* initial setup and rename "how to" to "setup" * move API to main nav * move api to main nav * add get starated, rework nav order * rename to install move mds out of install section * update api nav and home page * add install docs and python qs updates * python get started work * remove c and obj c for now * move java, python, and obj-c docs under api folder * move java api html to iframe (ugh) * remove api docs w/o details, move api text getstar * remove api docs wo detail updates get started * remvoe iframes * move eco system to main nav * fix api buttons * added more examples moved intro to ORT * fix links * fix get started titles * fix get started titles * fix more links * fix more links * more link fixes * fix nav remove inferencing and training subnav * fix top nav remove inference and training nav * fix title * fix tutorials nav hierarchy * fix python api button * add tenorflow keras example * fix quickstart toc * add imports fix spacing * fix links * update nav and python get started page * move ort training example, add coming soon for iot * update C# get started * fix spacing on quantization * Add some js get started content * fix formatting * fix typo * removed onnx-pytorch and onnx-tf * updated pip install torch and added links iot page * added pytorch tutorial heirarchy * updated web to docs soon added release blog link * add web link
2.1 KiB
| title | parent | grand_parent | has_children | nav_order |
|---|---|---|---|---|
| Overview | Deploy ONNX Runtime Mobile | Tutorials | false | 1 |
{::options toc_levels="2" /}
Overview
ONNX Runtime Mobile is a special build of ONNX Runtime that minimizes the binary size and reduces memory usage. It does this primarily by only including specified operators and types in the build, and by saving a pre-optimized ONNX model to an internal format ('ORT format model').
An ONNX model must be converted to an ORT format model to be used with ONNX Runtime Mobile.
There are two options for deploying ONNX Runtime mobile.
- TOC {:toc}
Pre-built package
The pre-built package includes support for selected operators and ONNX opset versions based on the requirements for popular models. If you choose to use the pre-built package you will not need a development environment to perform a custom build of ONNX Runtime, however the binary size will be larger than if you do a custom build with just the operators required by your model/s. Your model can only use the opsets and operators supported by the pre-built package.
Available pre-built packages
| Platform | Package location | Included Execution Providers |
|---|---|---|
| Android | onnxruntime-mobile package in Maven | CPU Execution Provider NNAPI Execution Provider |
| iOS (preview) | onnxruntime-mobile CocoaPod (C/C++ APIs) onnxruntime-mobile-objc CocoaPod (Objective-C API) |
CPU Execution Provider CoreML Execution Provider |
Operators and Types supported
ONNX operator and types supported by the pre-built package for each ONNX Runtime release are documented here.
Custom build
Performing a custom build will ensure the smallest possibly binary size and that the build will work with your model/s. You can also choose whether to enable features such as exceptions or traditional ML operators. You will however need a development environment to build for all platforms you're targeting.
Next: Initial setup
