CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
46 lines
2.4 KiB
ReStructuredText
46 lines
2.4 KiB
ReStructuredText
.. meta::
|
|
:description: The Component Unified ID (CUID) generates a deterministic unique ID for various devices such as GPUs, CPUs, NICs, and platforms in a data center environment.
|
|
:keywords: CUID docs, Data center standardization, GPU index, Data center device management, CUUID
|
|
|
|
.. _cuid-index:
|
|
|
|
*********************
|
|
CUID documentation
|
|
*********************
|
|
|
|
In a data center environment, a variety of devices, including GPUs, CPUs, and NICs are managed using different tools. Each of these tools uses distinct methods to identify devices, complicating correlation efforts. For example, the :doc:`AMD SMI <amdsmi:index>` tool uses BDF as the GPU index, while :doc:`ROCm Validation Suite <rocmvalidationsuite:index>` utilizes the ``gpu_id`` from KFD as the GPU index. This inconsistency makes device management and standardization particularly challenging, especially when external vendors are involved.
|
|
|
|
The Component Unified Identifier (CUID or CUUID) library solves this problem by generating a stable, unique ID (CUID) for various AMD hardware devices including GPUs, CPUs, NICs, and platform devices in a deterministic manner. This unique ID acts as a bridge, facilitating seamless integration of different descriptions across the ecosystem. CUIDs are formatted as UUIDv8 values and derived from hardware fingerprints using Keyed-Hash Message Authentication Code (HMAC), enabling consistent device identification across reboots and driver upgrades. To learn more about CUID, see :ref:`what-is-cuid`
|
|
|
|
The CUID library also provides a command-line (CLI) tool to detect devices and generate CUIDs. The CLI tool can help administrators simplify device management and integration.
|
|
|
|
The code is open and hosted at `<https://github.com/ROCm/rocm-systems/blob/develop/projects/cuid>`_.
|
|
|
|
The documentation is structured as follows:
|
|
|
|
.. grid:: 2
|
|
:gutter: 3
|
|
|
|
.. grid-item-card:: Install
|
|
|
|
* :ref:`Building-cuid`
|
|
|
|
.. grid-item-card:: How to
|
|
|
|
* :ref:`cuid-cli-tool`
|
|
* `Sample program using CUID API <https://github.com/ROCm/rocm-systems/blob/develop/projects/cuid/example/main.cc>`_
|
|
|
|
.. grid-item-card:: API reference
|
|
|
|
* :doc:`CUID API library <reference/amdcuid-c-api>`
|
|
|
|
.. grid-item-card:: Conceptual
|
|
|
|
* :ref:`cuid-file`
|
|
|
|
To contribute to the documentation, refer to
|
|
`Contributing to ROCm <https://rocm.docs.amd.com/en/latest/contribute/contributing.html>`_.
|
|
|
|
You can find licensing information on the
|
|
`Licensing <https://rocm.docs.amd.com/en/latest/about/license.html>`_ page.
|