Getting Started with Alveo U30 on Premises

Important Information and Prerequisites

  • The Xilinx Video SDK must be installed on a server with one of more Xilinx Alveo U30 cards already installed.

  • PCIe bifurcation must be enabled on each slot with an Alveo U30 card. Check the BIOS settings to make sure this is the case.

  • The installation instructions require a bash shell. Make sure to be using one when installing the packages.

  • The installation instructions provided should only be used with the OEM version of the Alveo U30 card. If you do not have an OEM card, or if you are unsure of which card version you have, please contact Xilinx.


Install the Xilinx Video SDK

  1. Disable automatic kernel updates on your system

  2. Install the following required packages if they are not already present

    • RHEL

    sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    
    • Amazon Linux 2

    sudo amazon-linux-extras install epel -y
    
  3. Remove older versions of the Xilinx Video SDK packages in case any where previously installed

    • Ubuntu

    sudo apt-get remove xvbm xilinx-u30-xvbm xrmu30decoder xrmu30scaler xrmu30encoder xmpsoccodecs xmultiscaler xlookahead xmaapps xmapropstojson xffmpeg launcher jobslotreservation xcdr
    sudo apt-get remove xrm xilinx-container-runtime xilinx-xvbm xilinx-u30-xrm-decoder xilinx-u30-xrm-encoder xilinx-u30-xrm-multiscaler xilinx-u30-xma-multiscaler xilinx-u30-xlookahead xilinx-u30-xmpsoccodecs xilinx-u30-xma-apps xilinx-u30-xmapropstojson xilinx-u30-xffmpeg xilinx-u30-launcher xilinx-u30-jobslotreservation xilinx-u30-xcdr xilinx-u30-gstreamer-1.16.2 xilinx-u30-vvas xilinx-sc-fw-u30 xilinx-u30-gen3x4-base xilinx-u30-gen3x4-validate
    
    • RHEL and Amazon Linux 2

    sudo yum remove xvbm xilinx-u30-xvbm xrmu30decoder xrmu30scaler xrmu30encoder xmpsoccodecs xmultiscaler xlookahead xmaapps xmapropstojson xffmpeg launcher jobslotreservation xcdr
    sudo yum remove xrm xilinx-container-runtime xilinx-xvbm xilinx-u30-xrm-decoder xilinx-u30-xrm-encoder xilinx-u30-xrm-multiscaler xilinx-u30-xma-multiscaler xilinx-u30-xlookahead xilinx-u30-xmpsoccodecs xilinx-u30-xma-apps xilinx-u30-xmapropstojson xilinx-u30-xffmpeg xilinx-u30-launcher xilinx-u30-jobslotreservation xilinx-u30-xcdr xilinx-u30-gstreamer-1.16.2 xilinx-u30-vvas xilinx-sc-fw-u30 xilinx-u30-gen3x4-base xilinx-u30-gen3x4-validate
    
  4. Ensure your package management client points to the remote package repository for the Xilinx Video SDK, according to the instructions described in the package feed configuration page.

  5. Install the core package of the Xilinx Video SDK. Note: it is imperative for the XRT package to be set to version 2.11.722.

    • Ubuntu

    sudo apt-get update
    sudo apt-get install xrt=2.11.722
    sudo apt-mark hold xrt
    sudo apt-get install xilinx-alveo-u30-core
    
    • RHEL and Amazon Linux 2

    sudo yum update
    sudo yum install yum-plugin-versionlock
    sudo yum install xrt-2.11.722-1.x86_64
    sudo yum versionlock xrt-2.11.722
    sudo yum install xilinx-alveo-u30-core
    
  6. Optionally install the other packages of the Xilinx Video SDK. Refer to the package description table for more details on the different packages included in the Xilinx Video SDK. Note: on RHEL, installing the GStreamer package requires an active RHEL subscription.

    • Ubuntu

    sudo apt-get install xilinx-alveo-u30-ffmpeg
    sudo apt-get install xilinx-alveo-u30-gstreamer
    sudo apt-get install xilinx-alveo-u30-examples
    
    • RHEL and Amazon Linux 2

    sudo yum install xilinx-alveo-u30-ffmpeg
    sudo yum install xilinx-alveo-u30-gstreamer
    sudo yum install xilinx-alveo-u30-examples
    
  1. Set up the bitstreams for the U30 devices and reboot:

    sudo cp /opt/xilinx/xcdr/xclbins/transcode.xclbin /opt/xilinx/xcdr/xclbins/transcode_lite.xclbin
    sudo cp /opt/xilinx/xcdr/xclbins/on_prem/transcode.xclbin /opt/xilinx/xcdr/xclbins/transcode.xclbin
    sudo reboot
    
  2. Program the binary images in the nonvolatile flash memories of the devices on your Alveo U30 cards. Note: should any problem arise when running the command, revert the card to its golden image (as explained in the card recovery instructions) and repeat this step.

    sudo /opt/xilinx/xrt/bin/xball --device-filter u30 xbmgmt program --base
    
  3. Cold boot the machine to have the cards use the new binaries:

    sudo shutdown now
    
  4. After the cold boot is complete, check if all the cards are up to date:

    source /opt/xilinx/xrt/setup.sh
    sudo /opt/xilinx/xrt/bin/xball --device-filter u30 xbmgmt program --base
    
    • If all cards are up to date, the command will report so and terminate. You can proceed to the next step.

    • Otherwise, you will see one or more messages indicating “Updating Satellite Controller (SC) firmware flash image” and the command will perform the required updates. After all updates are completed, perform a warm reboot of the machine.

  5. Test that the installation was successful with the command below. This script will run a validation test on each of the devices in your system. For each of the devices, you should see a message indicating that the test was successful:

    source /opt/xilinx/xrt/setup.sh
    sudo /opt/xilinx/xrm/tools/stop_xrmd.sh
    xball --device-filter u30 xbutil validate
    sudo /opt/xilinx/xrm/tools/restart_xrmd.sh
    

Set Up the Runtime Environment

Note: These steps below should be performed each time you open a new terminal on your system.

  1. Set up the runtime environment:

    source /opt/xilinx/xcdr/setup.sh
    
  2. Optionally verify that the cards are correctly detected:

    xbutil examine
    
  3. You are now ready to use the Xilinx video acceleration cards installed in your system.


Run Your First Examples

See the tutorials and examples page to learn how to run jobs on your system.