Card Validation - 2.3 English

Getting Started with Alveo Data Center Accelerator Cards User Guide (UG1301)

Document ID
UG1301
Release Date
2022-12-23
Version
2.3 English

Card installation can be validated using the xbutil validate command. This command performs various tests and checks on the card including PCIe link status, SC version status, memory and bandwidth tests and auxiliary power connection where applicable. Full command details can be found in xbutil documentation. Depending on the card tested, not all tests are valid or may require the function to be enabled (i.e., Peer-2-Peer).

Use the following command to run the card validation test:
$ /opt/xilinx/xrt/bin/xbutil validate --device <user BDF> --verbose

where user BDF is the card to be validated. See Displaying Card BDF Values to obtain the user BDF value.

Important: Prior to running an application on DFX-2RP platform, it is necessary to first program the shell partition on the card or the application will fail to detect the shell and will not run. See Programming the Shell Partition for DFX-2RP Platforms for details.
If the card was installed and validated successfully, a message similar to the following will be displayed. Review the Validation Summary section at the end of the output and confirm the device validated successfully. See Card Validation within the Alveo Card Debug Guide for support.
Starting validation for 1 devices

Validate Device           : [0000:02:00.1]
    Platform              : xilinx_u200_gen3x16_xdma_base_1
    SC Version            : 4.6.11
    Platform ID           : 0x0
-------------------------------------------------------------------------------
Test 1 [0000:02:00.1]     : Aux connection
    Description           : Check if auxiliary power is connected
    Test Status           : [PASSED]
-------------------------------------------------------------------------------
Test 2 [0000:02:00.1]     : PCIE link
    Description           : Check if PCIE link is active
    Test Status           : [PASSED]
-------------------------------------------------------------------------------
Test 3 [0000:02:00.1]     : SC version
    Description           : Check if SC firmware is up-to-date
    Test Status           : [PASSED]
-------------------------------------------------------------------------------
Test 4 [0000:02:00.1]     : Verify kernel
    Description           : Run 'Hello World' kernel test
    Xclbin                : /opt/xilinx/firmware/u200/gen3x16-xdma/base/test/verify.xclbin
    Testcase              : /opt/xilinx/xrt/test/validate.exe
    Test Status           : [PASSED]
-------------------------------------------------------------------------------
Test 5 [0000:02:00.1]     : DMA
    Description           : Run dma test
    Details               : Host -> PCIe -> FPGA write bandwidth = 9160.052688 MB/s
                            Host <- PCIe <- FPGA read bandwidth = 12070.525345 MB/s
    Test Status           : [PASSED]
-------------------------------------------------------------------------------
Test 6 [0000:02:00.1]     : iops
    Description           : Run scheduler performance measure test
    Xclbin                : /opt/xilinx/firmware/u200/gen3x16-xdma/base/test/verify.xclbin
    Testcase              : /opt/xilinx/xrt/test/xcl_iops_test.exe
    Details               : IOPS: 490653 (verify)
    Test Status           : [PASSED]
-------------------------------------------------------------------------------
Test 7 [0000:02:00.1]     : Bandwidth kernel
    Description           : Run 'bandwidth kernel' and check the throughput
    Xclbin                : /opt/xilinx/firmware/u200/gen3x16-xdma/base/test/bandwidth.xclbin
    Testcase              : /opt/xilinx/xrt/test/kernel_bw.exe
    Details               : Maximum throughput: 67188.9MB/s
    Test Status           : [PASSED]
-------------------------------------------------------------------------------
Test 8 [0000:02:00.1]     : Peer to peer bar

    Description           : Run P2P test
    Details               : P2P bar is not enabled
    Test Status           : [SKIPPED]
-------------------------------------------------------------------------------
Test 9 [0000:02:00.1]     : Memory to memory DMA
    Description           : Run M2M test
    Details               : bank0 -> bank1 M2M bandwidth: 11995.14 MB/s
                            bank0 -> bank2 M2M bandwidth: 12608.33 MB/s
                            bank0 -> bank3 M2M bandwidth: 12604.45 MB/s
                            bank1 -> bank2 M2M bandwidth: 12609.77 MB/s
                            bank1 -> bank3 M2M bandwidth: 12527.74 MB/s
                            bank2 -> bank3 M2M bandwidth: 12439.32 MB/s
    Test Status           : [PASSED]
-------------------------------------------------------------------------------
Test 10 [0000:02:00.1]    : Host memory bandwidth test

    Description           : Run 'bandwidth kernel' when host memory is enabled
    Details               : Host memory is not enabled
    Test Status           : [SKIPPED]
-------------------------------------------------------------------------------
Test 11 [0000:02:00.1]    : vcu
    Description           : Run decoder test
    Details               : Verify xclbin not available or shell partition is not
                            programmed. Skipping validation.
    Test Status           : [SKIPPED]
-------------------------------------------------------------------------------
Validation completed. Please run the command '--verbose' option for more details

Validation Summary
------------------
1  device(s) evaluated
1  device(s) validated successfully
0  device(s) had exceptions during validation

Validated successfully [1 device(s)]
  - [0000:02:00.1] : xilinx_u200_gen3x16_xdma_base_1

Validation Exceptions [0 device(s)]

Warnings produced during test [0 device(s)] (Note: The given test successfully validated)

Unsupported tests [1 device(s)]
  - [0000:02:00.1] : xilinx_u200_gen3x16_xdma_base_1 : Test(s): 'Peer to peer bar', 'Host memory bandwidth test', vcu
Note: The DMA bandwidth can vary depending upon NUMA/CPU affinity.
For DFX-2RP platforms such as u250_gen3x16_base_3, the `xbutil validate` command will skip tests if the shell partition has not been first been loaded. In the output below, Test 4 is skipped with Details given as: `Verify xclbin not available or shell partition is not programmed. Skipping validation'. See Programming the Shell Partition for DFX-2RP Platforms on how to program the shell partition.
Verbose: Enabling Verbosity
Starting validation for 1 devices

Validate Device           : [0000:02:00.1]
    Platform              : xilinx_u250_gen3x16_base_3
    SC Version            : 4.6.11
    Platform ID           : 0x0
-------------------------------------------------------------------------------
Test 1 [0000:02:00.1]     : Aux connection 
    Description           : Check if auxiliary power is connected
    Test Status           : [PASSED]
-------------------------------------------------------------------------------
Test 2 [0000:02:00.1]     : PCIE link 
    Description           : Check if PCIE link is active
    Test Status           : [PASSED]
-------------------------------------------------------------------------------
Test 3 [0000:02:00.1]     : SC version 
    Description           : Check if SC firmware is up-to-date
    Test Status           : [PASSED]
-------------------------------------------------------------------------------
Test 4 [0000:02:00.1]     : Verify kernel 
    Description           : Run 'Hello World' kernel test
    Details               : Verify xclbin not available or shell partition
                            is not programmed. Skipping validation.
    Test Status           : [SKIPPED]
...