onnxruntime/docs/execution-providers/ROCm-ExecutionProvider.md
PeixuanZuo ce1bc9b49c
[Add] add Rocm ep doc (#12971)
**Description**: Describe your changes.
add rocm ep doc.
Perview Github page : https://ytaous.github.io/onnxruntime/

Added items
Home page
- [ ] Update matrix on home page: https://ytaous.github.io/onnxruntime/
- [ ] Link "Installation Instruction Follow build instructions from
here" to onnxruntime build with ROCm(inference) page.(This link now
point to preview page, will change later)

Installation
- [ ] Update installation page:
https://ytaous.github.io/onnxruntime/docs/install/#training-install-table-for-all-languages

Build onnxruntime
- [ ] Add onnxruntime build with ROCm(inference):
https://ytaous.github.io/onnxruntime/docs/build/eps.html#amd-rocm
- [ ] Update onnxruntime build with ROCm(training):
https://ytaous.github.io/onnxruntime/docs/build/training.html#gpu--rocm

ExecutionProvider
- [ ] Add ROCm ExecutionProvider navitagation:
https://ytaous.github.io/onnxruntime/docs/execution-providers/
- [ ] Add ROCm-ExecutionProvider page:
https://ytaous.github.io/onnxruntime/docs/execution-providers/ROCm-ExecutionProvider.html

Performance
- [ ] Add enable_rocm_profiling introcduction:
https://ytaous.github.io/onnxruntime/docs/performance/tune-performance.html#profiling-and-performance-report
- [ ] Add graph-optimation for ROCm ep:
https://ytaous.github.io/onnxruntime/docs/performance/graph-optimizations.html#extended-graph-optimizations

Co-authored-by: Ethan Tao <ettao@microsoft.com@orttrainingdev7.d32nl1ml4oruzj4qz3bqlggovf.px.internal.cloudapp.net>
Co-authored-by: ytaous <4484531+ytaous@users.noreply.github.com>
2022-09-20 12:04:20 -07:00

1.5 KiB

title description parent nav_order redirect_from
ROCm (AMD) Instructions to execute ONNX Runtime with the AMD ROCm execution provider Execution Providers 11 /docs/reference/execution-providers/ROCm-ExecutionProvider

ROCm Execution Provider

{: .no_toc }

The ROCm Execution Provider enables hardware accelerated computation on AMD ROCm-enabled GPUs.

Contents

{: .no_toc }

  • TOC placeholder {:toc}

Install

Pre-built binaries of ONNX Runtime with ROCm EP are published for most language bindings. Please reference Install ORT.

Requirements

ONNX Runtime ROCm
main 5.2.3
1.12 5.2.3
1.12 5.2

Build

For build instructions, please see the BUILD page.

Usage

C/C++

Ort::Env env = Ort::Env{ORT_LOGGING_LEVEL_ERROR, "Default"};
Ort::SessionOptions so;
int device_id = 0;
Ort::ThrowOnError(OrtSessionOptionsAppendExecutionProvider_ROCm(so, device_id));

The C API details are here.

Python

Python APIs details are here.

Performance Tuning

For performance tuning, please see guidance on this page: ONNX Runtime Perf Tuning

Samples

Python

import onnxruntime as ort

model_path = '<path to model>'

providers = [
    'ROCmExecutionProvider',
    'CPUExecutionProvider',
]

session = ort.InferenceSession(model_path, providers=providers)