Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. C/C++
  3. ONNX runtime

ONNX runtime

MITC++v1.27.1

A cross-platform, high-performance accelerator for machine learning inference and training with ONNX models.

Visit WebsiteGitHubGitHub
21.2k stars4.1k forks0 contributors

What is ONNX runtime?

ONNX Runtime is a cross-platform inference and training accelerator for machine learning models in the ONNX format. It enables faster model execution and lower deployment costs by optimizing performance across different hardware platforms while supporting models from popular frameworks like PyTorch, TensorFlow, and scikit-learn.

Target Audience

Machine learning engineers and developers who need to deploy trained models in production environments with high performance requirements across diverse hardware configurations.

Value Proposition

Developers choose ONNX Runtime for its exceptional performance optimizations, broad framework compatibility, and ability to leverage hardware accelerators without rewriting model code, making it ideal for production ML deployments.

Overview

ONNX Runtime: cross-platform, high performance ML inferencing and training accelerator

Use Cases

Best For

  • Deploying PyTorch or TensorFlow models to production with minimal latency
  • Running machine learning inference on edge devices with hardware accelerators
  • Accelerating transformer model training on multi-GPU systems
  • Standardizing model deployment across different frameworks using ONNX format
  • Optimizing inference performance for classical ML models like XGBoost and LightGBM
  • Building cross-platform ML applications that run on Windows, Linux, and macOS

Not Ideal For

  • Projects exclusively using frameworks with built-in serving solutions like TensorFlow Serving or TorchServe, without cross-framework needs
  • Rapid prototyping or research environments where model conversion to ONNX adds unnecessary overhead
  • Edge deployments on highly constrained devices where the runtime's footprint might be too large
  • Teams requiring frequent model updates without conversion steps, as ONNX models need re-exporting and reloading

Pros & Cons

Pros

Cross-Platform Hardware Support

Runs on Windows, Linux, macOS and leverages various hardware accelerators like NVIDIA GPUs, enabling optimal performance across diverse environments as stated in the README.

Framework Agnosticism

Supports models from PyTorch, TensorFlow, scikit-learn, LightGBM, and XGBoost, allowing deployment without rewriting code for different frameworks, highlighting its versatility.

Performance Optimizations

Reduces inference latency and costs through graph optimizations and hardware acceleration, with documentation emphasizing faster customer experiences.

Training Acceleration

Speeds up transformer training on multi-node NVIDIA GPUs with a one-line addition in PyTorch scripts, as mentioned in the README for minimal code changes.

Cons

ONNX Conversion Overhead

Models must be converted to ONNX format, which can be complex and may not support all operations or latest framework features, adding a step to deployment pipelines.

Limited Ecosystem for Custom Models

While broad, support for non-standard or custom models might require additional work, and not all ML libraries export seamlessly to ONNX, potentially causing compatibility issues.

Setup and Integration Complexity

Integrating ONNX Runtime involves learning its APIs and managing dependencies for different hardware providers, which can be steep for simple or existing deployments without clear plug-and-play solutions.

Frequently Asked Questions

Quick Stats

Stars21,174
Forks4,067
Contributors0
Open Issues808
Last commit17 hours ago
CreatedSince 2018

Tags

#ai-framework#performance-optimization#deep-learning#hardware-acceleration#neural-networks#model-deployment#tensorflow#onnx#cross-platform#scikit-learn#machine-learning#inference-engine#pytorch

Links & Resources

Website

Included in

C/C++70.6k
Auto-fetched 16 hours ago

Related Projects

OpenCVOpenCV

Open Source Computer Vision Library

Stars90,111
Forks56,922
Last commit1 day ago
FAISSFAISS

A library for efficient similarity search and clustering of dense vectors.

Stars40,573
Forks4,469
Last commit22 hours ago
XGBoostXGBoost

Scalable, Portable and Distributed Gradient Boosting (GBDT, GBRT or GBM) Library, for Python, R, Java, Scala, C++ and more. Runs on single machine, Hadoop, Spark, Dask, Flink and DataFlow

Stars28,594
Forks8,881
Last commit1 day ago
DarknetDarknet

Convolutional Neural Networks

Stars26,484
Forks21,035
Last commit2 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub