728x90
https://crates.io/crates/ort에 따르면 cuda를 사용할수 있습니다.(cuda는 이미 설치되어있다고 가정합니다.)
cargo.toml에 ort를 추가할때 feature로 load-dynamic이나 cuda가 있으면 cuda를 사용 할 수 있는것 같습니다.
#[cfg(any(feature = "load-dynamic", feature = "cuda"))]
cargo.toml에 아래 코드를 추가합니다.
ort = {version="1.14.6", features = ["cuda"]}
그리고 main.rs에 use ort::ExecutionProvider 추가하고
main()함수 에서
ExecutionProvider::cuda().is_available()
로 확인할수 있습니다.
builder 환경 설정할때
.with_execution_providers([ExecutionProvider::cuda()])옵션을 추가합니다.
위 옵션이 있을때 available 결과가 False로 나오면 providers는 자동으로 CPU로 설정되는것 같습니다.
let env = Arc::new(
Environment::builder()
.with_name("YOLOv8")
.with_execution_providers([ExecutionProvider::cuda()])
.build()
.unwrap(),
);
watch -d nvidia-smi
'Rust' 카테고리의 다른 글
[Rust] mod와 파일 시스템 (109) | 2023.07.15 |
---|---|
[Rust] 주석 (107) | 2023.07.13 |
[Rust] Object Tracking in RUST with YOLOv8n ONNX model (78) | 2023.07.06 |
[OpenCV] DNN failing to load an ONNX file: computeShapeByReshapeMask (66) | 2023.07.05 |
[RUST]OpenCV : 'limits' file not found (26) | 2023.07.05 |