.. meta::
  :description: Reference for the CVS health test configuration file, covering AGFHC, TransferBench, and RVS burn-in parameters for AMD GPU cluster validation.
  :keywords: CVS, health, AGFHC, TransferBench, RVS, ROCm, GPU, burn-in, AMD Instinct, configuration, JSON, benchmark

***************************************************************************
Health test configuration file reference for Cluster Validation Suite (CVS)
***************************************************************************

The health configuration file controls AGFHC, `TransferBench <https://rocm.docs.amd.com/projects/TransferBench/en/latest/index.html>`_, and `ROCm Validation Suite (RVS) <https://rocm.docs.amd.com/projects/ROCmValidationSuite/en/latest/index.html>`_ burn-in parameters. Use these tests to validate GPU hardware, memory bandwidth, and compute throughput on each cluster node before production workloads.

See :doc:`/how-to/test-suites/burn-in-diag/health` for more information on running these tests.

.. note::

  In this configuration file, ``{user-id}`` resolves to the current username at runtime. You can also manually change this value to your username.

.. dropdown:: ``mi300_health_config.json``

  .. code:: json

    {

        "agfhc":
        {
            "path": "/opt/amd/agfhc",
            "package_tar_ball": "/home/{user-id}/PACKAGES/agfhc-mi300x_1.22.0_ub2204.tar.bz2",
            "install_dir": "/home/{user-id}/INSTALL/agfhc/",
            "_comments_log_dir": "log_dir has to be a NON NFS local file system",
            "log_dir": "/root/agfhc_logs",
            "hbm_test_duration": "00:01:30"
        },
        "transferbench":
        {
          "path": "/home/{user-id}/INSTALL/TransferBench",
          "git_install_path": "/home/{user-id}/INSTALL/",
          "git_url": "https://github.com/ROCm/TransferBench.git",
          "git_tag": "v1.67.00",
          "_comment_rocm_path": "ROCm installation path. Set the placeholder changeme to auto-detect from /opt/rocm or /opt/rocm/core-*",
          "rocm_path": "<changeme>",
          "results":
          {
              "bytes_to_transfer": "268435456",
              "path": "/home/{user-id}/INSTALL/TransferBench",
              "gpu_to_gpu_a2a_rtotal": "320.0",
              "avg_gpu_to_gpu_p2p_unidir_bw": "33.9",
              "avg_gpu_to_gpu_p2p_bidir_bw": "43.9",
              "best_gpu0_bw": "480.0",
              "32_cu_local_read": "1650",
              "32_cu_local_write": "1250.0",
              "32_cu_local_copy": "1250.0",
              "32_cu_rem_read": "48.0",
              "32_cu_rem_write": "48.0",
              "32_cu_rem_copy": "48.0"

          }
        },
        "rvs":
        {
            "path": "<changeme>/bin",
            "git_install_path": "/home/{user-id}/INSTALL/rvs",
            "git_url": "https://github.com/ROCm/ROCmValidationSuite.git",
            "nfs_install": "True",
            "_comment_rocm_path": "ROCm installation path.Set to placeholder changeme auto-detect from /opt/rocm or /opt/rocm/core-*",
            "rocm_path": "<changeme>",
            "config_path_mi300x": "/opt/rocm/share/rocm-validation-suite/conf/MI300X",
            "config_path_default": "/opt/rocm/share/rocm-validation-suite/conf",
            "_comment_rvs_test_level": "RVS test level configuration (0-5). 0: Run individual tests (skip level test), 1-5: Run LEVEL config test if RVS >= 1.3.0, else run individual tests. Default is 4.",
            "rvs_test_level": 4,
            "tests": [
                {
                    "name": "level_config",
                    "description": "RVS LEVEL Configuration Test - Runs all modules collectively",
                    "timeout": 14400,
                    "expected_pass": true,
                    "fail_regex_patterns": [
                        "met:\\s*FALSE",
                        "pass:\\s*FALSE",
                        "\\[ERROR\\s*\\]",
                        "FAIL",
                        "ERROR:",
                        "peqt false",
                        "RVS-ERROR",
                        "Missing packages\\s*:\\s*([1-9]\\d*)",
                        "Version mismatch packages\\s*:\\s*([1-9]\\d*)"
                    ]
                },
                {
                    "name": "mem_test",
                    "config_file": "mem.conf",
                    "description": "Memory Test",
                    "timeout": 10000,
                    "expected_pass": true,
                    "fail_regex_pattern": "FAIL|\\[ERROR\\s*\\]|RVS-ERROR"
                },
                {
                    "name": "gst_single",
                    "config_file": "gst_single.conf",
                    "description": "GPU Stress Test",
                    "timeout": 18000,
                    "expected_pass": true,
                    "fail_regex_pattern": "met:\\s*FALSE|RVS-ERROR"
                },
                {
                    "name": "iet_stress",
                    "config_file": "iet_stress.conf",
                    "description": "Peak Power Test",
                    "timeout": 3600,
                    "expected_pass": true,
                    "fail_regex_pattern": "pass:\\s*FALSE|RVS-ERROR"
                },
                {
                    "name": "pebb_single",
                    "config_file": "pebb_single.conf",
                    "description": "PCI Express Bandwidth Benchmark",
                    "timeout": 3600,
                    "expected_pass": true,
                    "fail_regex_pattern": "\\[ERROR\\s*\\]|RVS-ERROR"
                },
                {
                    "name": "pbqt_single",
                    "config_file": "pbqt_single.conf",
                    "description": "P2P Benchmark and Qualification Tool",
                    "timeout": 3600,
                    "expected_pass": true,
                    "fail_regex_pattern": "FAIL|ERROR:|RVS-ERROR"
                },
                {
                    "name": "babel_stream",
                    "config_file": "babel.conf",
                    "description": "BABEL Benchmark Test",
                    "timeout": 9000,
                    "expected_pass": true,
                    "fail_regex_pattern": "\\[ERROR\\s*\\]|RVS-ERROR"
                }
            ]
        }

    }



Parameters
==========

The following parameters are available in the health configuration file.

AGFHC
-----
.. |br| raw:: html

    <br />

.. list-table::
   :widths: 3 3 5
   :header-rows: 1

   * - Configuration parameters
     - Default values
     - Description
   * - ``path``
     - ``/opt/amd/agfhc``
     - Path where AGFHC is installed
   * - ``package_tar_ball``
     - ``/home/{user-id}/`` |br| ``PACKAGES/agfhc-mi300x`` |br| ``_1.22.0_ub2204.tar.bz2``
     - Path where the tar ball is downloaded
   * - ``install_dir``
     - ``/home/{user-id}/INSTALL/agfhc/``
     - Path where AGFHC runs
   * - ``log_dir``
     - ``/root/agfhc_logs``
     - Log directory
   * - ``hbm_test_duration``
     - 00:01:30
     - HBM test duration

TransferBench
-------------

.. list-table::
   :widths: 3 3 5
   :header-rows: 1

   * - Configuration parameters
     - Default values
     - Description
   * - ``path``
     - ``/opt/amd/transferbench``
     - Path where TransferBench is installed
   * - ``git_install_path``
     - ``/home/{user-id}/INSTALL/``
     - Path where the Git repo is installed
   * - ``git_url``
     - `https://github.com/ROCm/TransferBench.git <https://github.com/ROCm/TransferBench.git>`_
     - URL for Git repo
   * - ``git_tag``
     - ``v1.67.00``
     - Git tag to checkout after cloning TransferBench
   * - ``rocm_path``
     - ``<changeme>``
     - Set the path of rocm
   * - ``bytes_to_transfer``
     - 268435456
     - Amount of data to transfer in bytes (256 MB); this is the payload size for bandwidth tests
   * - ``gpu_to_gpu_a2a_rtotal``
     - 320.0
     - All-to-all communication total bandwidth in GB/s across all GPUs
   * - ``avg_gpu_to_gpu_p2p_unidir_bw``
     - 33.9
     - Average peer-to-peer unidirectional bandwidth (GB/s) between GPU pairs
   * - ``avg_gpu_to_gpu_p2p_bidir_bw``
     - 43.9
     - Average peer-to-peer bidirectional bandwidth (GB/s) between GPU pair
   * - ``best_gpu0_bw``
     - 480.0
     - Best measured bandwidth (GB/s) for GPU 0
   * - ``32_cu_local_read``
     - 1650
     - Local memory read bandwidth (GB/s) using 32 CUs
   * - ``32_cu_local_write``
     - 1250.0
     - Local memory write bandwidth (GB/s) using 32 CUs
   * - ``32_cu_local_copy``
     - 1250.0
     - Local memory copy bandwidth (GB/s) using 32 CUs
   * - ``32_cu_rem_read``
     - 48.0
     - Remote memory read bandwidth (GB/s) using 32 CUs
   * - ``32_cu_rem_write``
     - 48.0
     - Remote memory write bandwidth (GB/s) using 32 CUs
   * - ``32_cu_rem_copy``
     - 48.0
     - Remote memory copy bandwidth (GB/s) using 32 CUs

ROCm Validation Suite (RVS)
---------------------------

.. list-table::
   :widths: 3 3 5
   :header-rows: 1

   * - Configuration parameters
     - Default values
     - Description
   * - ``path``
     - ``<changeme>/bin``
     - Path where the RVS test is installed
   * - ``git_install_path``
     - ``/home/{user-id}/INSTALL/rvs``
     - Path to installed Git repo
   * - ``git_url``
     - `https://github.com/ROCm/ROCmValidationSuite.git <https://github.com/ROCm/ROCmValidationSuite.git>`_
     - URL for Git repo
   * - ``nfs_install``
     - True
     - Set the flag to install nfs
   * - ``rocm_path``
     - ``<changeme>``
     - Set the path of rocm
   * - ``config_path_mi300x``
     - ``/opt/rocm/share/`` |br| ``rocm-validation-suite`` |br| ``/conf/MI300X``
     - Path for Instinct MI300X configuration
   * - ``config_path_default``
     - ``/opt/rocm/share/`` |br| ``rocm-validation`` |br| ``-suite/conf``
     -  Default path for RVS
   * - ``rvs_test_level``
     - 4
     - Test level
   * - ``name``
     - ``level_config``
     - Test name
   * - ``description``
     - RVS LEVEL Configuration Test - Runs all modules collectively
     - Test description
   * - ``timeout``
     - 14400
     - Timeout in secs
   * - ``expected_pass``
     - True
     - Result
   * - ``fail_regex_pattern``
     - Values:
        - ``"met:\\s*FALSE",``
        - ``"pass:\\s*FALSE",``
        - ``"\\[ERROR\\s*\\]",``
        - ``"FAIL",``
        - ``"ERROR:",``
        - ``"peqt false",``
        - ``"RVS-ERROR",``
        - ``"Missing packages\\s*:\\s*([1-9]\\d*)",``
        - ``"Version mismatch packages\\s*:\\s*([1-9]\\d*)"``
     - Regular expressions
   * - ``name``
     - ``mem_test``
     - Test name
   * - ``config_file``
     - ``mem_test.conf``
     - Test config file
   * - ``description``
     - Memory test
     - Test description
   * - ``timeout``
     - 10000
     - Timeout in secs
   * - ``expected_pass``
     - True
     - Result
   * - ``fail_regex_pattern``
     - ``FAIL|\\[ERROR\\s*\\]|RVS-ERROR``
     - Failure expression
   * - ``name``
     - ``gst_single``
     - Test name
   * - ``config_file``
     - ``gst_single.conf``
     - Test config file
   * - ``description``
     - GPU Stress Test
     - Test description
   * - ``timeout``
     - 18000
     - Timeout in secs
   * - ``expected_pass``
     - True
     - Result
   * - ``fail_regex_pattern``
     - ``met:\\s*FALSE|RVS-ERROR``
     - Failure expression
   * - ``name``
     - ``iet_stress``
     - Test name
   * - ``config_file``
     - ``iet_stress.conf``
     - Test config file
   * - ``description``
     - Peak Power Test
     - Test description
   * - ``timeout``
     - 3600
     - Timeout in secs
   * - ``expected_pass``
     - True
     - Result
   * - ``fail_regex_pattern``
     - ``\\[ERROR\\s*\\]|RVS-ERROR``
     - Failure expression
   * - ``name``
     - ``pbqt_single``
     - Test name
   * - ``config_file``
     - ``pbqt_single.conf``
     - Test config file
   * - ``description``
     - P2P Benchmark and Qualification Tool
     - Test description
   * - ``timeout``
     - 3600
     - Timeout in secs
   * - ``expected_pass``
     - True
     - Result
   * - ``fail_regex_pattern``
     - ``FAIL|ERROR:|RVS-ERROR``
     - Failure expression
   * - ``name``
     - ``babel_stream``
     - Test name
   * - ``config_file``
     - ``babel_stream.conf``
     - Test config file
   * - ``description``
     - BABEL Benchmark Test
     - Test description
   * - ``timeout``
     - 9000
     - Timeout in secs
   * - ``expected_pass``
     - True
     - Result
   * - ``fail_regex_pattern``
     - ``\\[ERROR\\s*\\]|RVS-ERROR``
     - Failure expression
