{"id":18782082,"url":"https://github.com/gpuopen-librariesandsdks/radeonml","last_synced_at":"2026-03-07T10:32:02.324Z","repository":{"id":99066798,"uuid":"245379371","full_name":"GPUOpen-LibrariesAndSDKs/RadeonML","owner":"GPUOpen-LibrariesAndSDKs","description":null,"archived":false,"fork":false,"pushed_at":"2023-09-21T16:19:21.000Z","size":92712,"stargazers_count":85,"open_issues_count":9,"forks_count":11,"subscribers_count":15,"default_branch":"master","last_synced_at":"2025-07-20T08:34:05.735Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://gpuopen.com/radeon-prorender-suite/","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GPUOpen-LibrariesAndSDKs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-03-06T09:30:31.000Z","updated_at":"2025-07-19T20:23:03.000Z","dependencies_parsed_at":null,"dependency_job_id":"2a754716-abae-43c5-9ef2-080b955ed2f8","html_url":"https://github.com/GPUOpen-LibrariesAndSDKs/RadeonML","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/GPUOpen-LibrariesAndSDKs/RadeonML","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GPUOpen-LibrariesAndSDKs%2FRadeonML","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GPUOpen-LibrariesAndSDKs%2FRadeonML/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GPUOpen-LibrariesAndSDKs%2FRadeonML/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GPUOpen-LibrariesAndSDKs%2FRadeonML/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GPUOpen-LibrariesAndSDKs","download_url":"https://codeload.github.com/GPUOpen-LibrariesAndSDKs/RadeonML/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GPUOpen-LibrariesAndSDKs%2FRadeonML/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30212050,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-07T09:02:10.694Z","status":"ssl_error","status_checked_at":"2026-03-07T09:02:08.429Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T20:34:46.752Z","updated_at":"2026-03-07T10:32:02.275Z","avatar_url":"https://github.com/GPUOpen-LibrariesAndSDKs.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RadeonML: AMD Inference Library\r\n\r\n## 1. C/C++ API\r\n\r\n\r\n* [RadeonML.h](include/rml/RadeonML.h) - main C API\r\n* [RadeonML.hpp](include/rml/RadeonML.hpp) - main and graph manipulation C++ API\r\n* [RadeonML_cl.h](include/rml/RadeonML_cl.h) - OpenCL interoperation C API\r\n* [RadeonML_cl.hpp](include/rml/RadeonML_cl.hpp) - OpenCL interoperation C++ API\r\n* [RadeonML_d3d12.h](include/rml/RadeonML_d3d12.h) - Direct3D 12 interoperation C API\r\n* [RadeonML_d3d12.hpp](include/rml/RadeonML_d3d12.hpp) - Direct3D 12 interoperation C++ API\r\n* [RadeonML_dml.h](include/rml/RadeonML_dml.h) - DirectML interoperation C API\r\n* [RadeonML_dml.hpp](include/rml/RadeonML_dml.hpp) - DirectML interoperation C++ API\r\n* [RadeonML_graph.h](include/rml/RadeonML_graph.h) - graph manipulation C API\r\n* [RadeonML_miopen.h](include/rml/RadeonML_miopen.h) - MIOpen interoperation C API\r\n* [RadeonML_miopen.hpp](include/rml/RadeonML_miopen.hpp) - MIOpen interoperation C++ API\r\n* [RadeonML_mtl.h](include/rml/RadeonML_mtl.h) - Metal interoperation C API\r\n* [RadeonML_mtl.hpp](include/rml/RadeonML_mtl.hpp) - Metal interoperation C++ API\r\n\r\n\r\n\r\n## 2. Code examples\r\n\r\n* [Loading a model from a file (C)](samples/load_model.c)\r\n* [Loading a model from a file (C++)](samples/load_model.cpp)\r\n* [graph operation example (C++)](samples/graph_ops.cpp)\r\n* [graph operation example (C)](samples/graph_ops.c)\r\n\r\n### 2.1. List of supported models for load_model sample\r\n\r\n* vgg16.onnx, vgg19.onnx\r\n    * Supported backends: DirectML\r\n    * Input format: NCHW (Nx3x224x224)\r\n* vgg16_opset11.onnx, vgg19_opset11.onnx\r\n    * Supported backends: DirectML\r\n    * Input format: NHWC (Nx224x224x3)\r\n* mobilenet_v1_1.0_224.onnx, mobilenet_v2_1.0_224.onnx\r\n    * Supported backends: DirectML\r\n    * Input format: NCHW (Nx3x224x224)\r\n* mobilenet_v1_opset11.onnx, mobilenet_v2_opset11.onnx\r\n    * Supported backends: DirectML\r\n    * Input format: NHWC (Nx224x224x3)\r\n* resnet18v1.onnx, resnet34v1.onnx, resnet50v1.onnx, resnet101v1.onnx, resnet152v1.onnx\r\n* resnet18v2.onnx, resnet34v2.onnx, resnet50v2.onnx, resnet101v2.onnx, resnet152v2.onnx\r\n    * Supported backends: DirectML\r\n    * Input format: NCHW (Nx3x224x224)\r\n* inception_v1_opset8.onnx, inception_v2_opset8.onnx\r\n    * Supported backends: DirectML\r\n    * Input format: NCHW (Nx3x224x224)\r\n* inception_v1_opset11.onnx, inception_v2_opset11.onnx\r\n    * Supported backends: DirectML\r\n    * Input format: NHWC (Nx224x224x3)\r\n* inception_v3_opset11.onnx, inception_v4_opset11.onnx\r\n    * Supported backends: DirectML\r\n    * Input format: NHWC (Nx299x299x3)\r\n* denoise_c3_ldr.onnx, denoise_c3_hdr.onnx\r\n    * Supported backends: DirectML, MIOpen, MPS\r\n    * Input format: NHWC (NxHxWx3)\r\n* denoise_c9_ldr.onnx, denoise_c9_hdr.onnx\r\n    * Supported backends: DirectML, MIOpen, MPS\r\n    * Input format: NHWC (NxHxWx9)\r\n* upscale2x_c3_rt.onnx, upscale2x_c3_esrgan_small.onnx\r\n    * Supported backends: DirectML, MIOpen, MPS\r\n    * Input format: NHWC\r\n\r\nTo inference supported models just substitute 'path/model', 'path/input' and 'path/output' with correct paths in load_model sample.\r\nAdditional information about supported models: https://github.com/onnx/models\r\n\r\n## 3. System requirements\r\n* Windows 10 19H1 or later (for DirectML backend)\r\n* Windows 7 uses the MIOpen backend\r\n* Ubuntu 18.04\r\n* CentOS/RHEL 7.6, 7.7\r\n* OSX Mojave and Catalina\r\n\r\n## 3.1 Features supported\r\n* ONNX support (opset 6-11)\r\n* TensforFlow frozen graph pb files\r\n* FP32 and FP16 for ONNX\r\n\r\n    \r\nFor more information, see documentation at this link \r\nhttps://radeon-pro.github.io/RadeonProRenderDocs/rml/about.html\r\n\r\n## 3.2 Features supported by OS\r\n* Windows DirectML supports our denoisers, upscalers and common models like resnet, VGG etc..\r\n* Miopen backend for Windows and Linux only supports our denoisers and upscalers. When creating a RML context if DML is not supported we will fallback automatically to MIOpen\r\n* MPS backend only supports our denoisers\r\n\r\n* Model supported by the different backend\r\n\r\n|    | DIRECTML | MIOPEN | MPS |\r\n| ------------- | ------------- |------------- |------------- |\r\n| Inception V1 | Yes  | Yes  | No |\r\n| Inception V2 | Yes  | Yes  | No |\r\n| Inception V3 | Yes  | Yes  | No |\r\n| Inception V4 | Yes  | Yes  | No |\r\n| MobileNet V1 | Yes  | Yes  | No |\r\n| MobileNet V2 | Yes  | Yes  | No |\r\n| ResNet V1 50 | Yes  | No  | No |\r\n| ResNet V2 50 | Yes  | No  | No |\r\n| VGG 16 | Yes  | No  | No |\r\n| VGG 19 | Yes  | No  | No |\r\n| UNet(denoiser) | Yes  | Yes  | Yes |\r\n| ESRGAN | Yes  | Yes  | Yes|\r\n| RTUnet | Yes  | Yes  | Yes |\r\n\r\nOthers models may work as they will have similar operators, but we haven't checked them\r\n\r\n## 3.3 DirectML and Directx12 interop\r\n* A device and command queue can be passed when creating a RML context. We support both async compute queue(D3D12_COMMAND_LIST_TYPE_COMPUTE) and the default command queue(D3D12_COMMAND_LIST_TYPE_DIRECT).\r\nCompute queue are preferred as it will run asynchronously with any graphics job.\r\nIf no queue are passed, RML will create a compute queue\r\n\r\n\r\n## 4. Building and running the samples\r\nYou will need CMake 3.10 at least to build the sample.\r\n\r\nThe input must contain contiguous data of a tensor with specified dimensions.\r\nThe input (.bin files) in the repo don't necessarily represent real data at the moment, but just show to format the data\r\n\r\n\r\n## 5. Future\r\nWe aim at providing the same level of feature for every back end and will provide updates monthly for that\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgpuopen-librariesandsdks%2Fradeonml","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgpuopen-librariesandsdks%2Fradeonml","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgpuopen-librariesandsdks%2Fradeonml/lists"}