ONNX Runtime: cross-platform, high performance ML inferencing and training accelerator
Find a file
Dmitri Smirnov 950fe5e28b
Implement SparseTensor and infrastructure suppport and advance ONNX commit (#8038)
SparseTensor support
  Implement Builder pattern
  Fix support for 1-D and 2-D COO indices
  Implement and test CSR support.
  Handle shape inference for SparseTensors
  Implement conversion for COO, CSR and tests.
  Address the case where constant sparse initializer is the output.
  Implement test infra for SparseTensors
  Implement SparseDenseMatMul for Csr and COO and tested it.
  Add hash for SparseToDenseMatMul
  Finish shared provider refactor
  Refactor GetOrCreate to Create
  Working on py interface
  Expose OrtDevice and use it in allocate_numpy
	Adjust Sparse interfaces, add support for string SparseTensor. Add tests.
	Add and test to_cuda()
	Add accessors to format specific indices
	Test values and indices views, read-only flag, after GC access
	Add sparse related methods to OrtValue
	Re-work SparseTensor wrapper, add OrtValue methods
	Rework numpy_array_to_cuda/to_cpu
	Add run_with_ort_values
	Add models and test sparse_mat_mul with run_with_ort_values
	Refactor sparse tensor to use a single buffer
        Ifdef x86 Eigen CSR sparse matmul implementation
        Exclude broken test, check for string type when copying cross device
       Split pybind schema, regenerate docs, add exclusion
       Conditionally exclude schema module
       Update docs fix cuda build
       Add test to a filter and renerate JS docs
      Add conversion and test string support for sparse tensors
      Exclude conversion utils from minimal build
      Add CUDA Memcpy and adjust provider interfaces
2021-07-22 15:24:36 -07:00
.github Update issue template to ask users to check known issues to avoid repetition. (#8288) 2021-07-02 15:36:14 -07:00
cgmanifests Update submodule onnxruntime-extensions. (#8282) 2021-07-13 10:21:11 +08:00
cmake Implement SparseTensor and infrastructure suppport and advance ONNX commit (#8038) 2021-07-22 15:24:36 -07:00
csharp Remove all C/C++ samples from our C# dir (#8441) 2021-07-20 21:46:46 -07:00
dockerfiles Update Dockerfile.cuda: remove compute capability 30 2021-07-12 15:19:48 -07:00
docs Implement SparseTensor and infrastructure suppport and advance ONNX commit (#8038) 2021-07-22 15:24:36 -07:00
include/onnxruntime/core Implement SparseTensor and infrastructure suppport and advance ONNX commit (#8038) 2021-07-22 15:24:36 -07:00
java [Java] Allow extraction of multidimensional String tensors (#8452) 2021-07-22 13:19:49 -07:00
js bumping onnxruntime version to 1.8.1 (#8429) 2021-07-19 16:48:56 -07:00
objectivec [Objective-C API] Fix ORTIsCoreMLExecutionProviderAvailable link error when used from Swift. (#8350) 2021-07-14 18:38:58 -07:00
onnxruntime Implement SparseTensor and infrastructure suppport and advance ONNX commit (#8038) 2021-07-22 15:24:36 -07:00
orttraining Update torch litghning and re-enable test 2021-07-22 14:18:07 -07:00
package/rpm bumping onnxruntime version to 1.8.1 (#8429) 2021-07-19 16:48:56 -07:00
samples Add link to sample repos (#8417) 2021-07-21 16:18:59 -07:00
server fix boost download url (#7843) 2021-05-26 16:08:57 -07:00
tools Implement SparseTensor and infrastructure suppport and advance ONNX commit (#8038) 2021-07-22 15:24:36 -07:00
winml Enable string attributes for experimental model building (#8428) 2021-07-19 11:48:41 -07:00
.clang-format
.clang-tidy
.dockerignore Update dockerfiles (#5929) 2020-11-25 15:38:22 -08:00
.flake8 Add ability to track per operator types in reduced build config. (#6428) 2021-01-29 07:59:51 +10:00
.gitattributes
.gitignore Add auto doc gen for ORTModule API during CI build (#7046) 2021-03-22 10:20:33 -07:00
.gitmodules Adding pytorch cpuinfo as dependency (#8178) 2021-07-12 14:21:12 -07:00
build.amd64.1411.bat
build.bat
build.sh Add iOS test pipeline and a sample app. (#5298) 2020-09-29 13:53:11 -07:00
CODEOWNERS Update CODEOWNERS with mobile team ownership of expected kernel def hash data files. (#8454) 2021-07-22 11:19:06 -07:00
CONTRIBUTING.md Add README for docs (#6626) 2021-03-12 15:14:40 -08:00
LICENSE Remove year from license (#6658) 2021-02-12 00:25:56 -08:00
NuGet.config Delete nuget extra configs (#6477) 2021-01-27 20:25:45 -08:00
ort.wprp
packages.config Update DirectML version to 1.5.1 and enable ARM/ARM64 builds with DML (#7511) 2021-04-30 00:49:30 -07:00
README.md Add link to sample repos (#8417) 2021-07-21 16:18:59 -07:00
requirements-dev.txt Add post-install command to build PyTorch CPP extensions from within onnxruntime package (#8027) 2021-06-28 18:11:58 -07:00
requirements-doc.txt Add auto doc gen for ORTModule API during CI build (#7046) 2021-03-22 10:20:33 -07:00
requirements-training.txt Add post-install command to build PyTorch CPP extensions from within onnxruntime package (#8027) 2021-06-28 18:11:58 -07:00
requirements.txt.in Chang how numpy version is handled. (#8130) 2021-06-23 14:08:37 -07:00
setup.py fix ld_preload for rocm (#8290) 2021-07-02 17:15:28 -07:00
ThirdPartyNotices.txt Adding pytorch cpuinfo as dependency (#8178) 2021-07-12 14:21:12 -07:00
VERSION_NUMBER bumping onnxruntime version to 1.8.1 (#8429) 2021-07-19 16:48:56 -07:00

ONNX Runtime is a cross-platform inference and training machine-learning accelerator.

ONNX Runtime inference can enable faster customer experiences and lower costs, supporting models from deep learning frameworks such as PyTorch and TensorFlow/Keras as well as classical machine learning libraries such as scikit-learn, LightGBM, XGBoost, etc. ONNX Runtime is compatible with different hardware, drivers, and operating systems, and provides optimal performance by leveraging hardware accelerators where applicable alongside graph optimizations and transforms. Learn more →

ONNX Runtime training can accelerate the model training time on multi-node NVIDIA GPUs for transformer models with a one-line addition for existing PyTorch training scripts. Learn more →

Get Started

General Information: onnxruntime.ai

Usage documention and tutorials: onnxruntime.ai/docs

Companion sample repositories:

Build Pipeline Status

System CPU GPU EPs
Windows Build Status Build Status Build Status
Linux Build Status
Build Status
Build Status
Build Status
Build Status
Build Status
Build Status
Build Status
Build Status
Build Status
Build Status
Mac Build Status
Build Status
Android Build Status
iOS Build Status
WebAssembly Build Status

Data/Telemetry

Windows distributions of this project may collect usage data and send it to Microsoft to help improve our products and services. See the privacy statement for more details.

Contributions and Feedback

We welcome contributions! Please see the contribution guidelines.

For feature requests or bug reports, please file a GitHub Issue.

For general discussion or questions, please use Github Discussions.

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

License

This project is licensed under the MIT License.