Overview

Vitis Runtime Library diagram

Host

(x86, Power PC or ARM CPU)

Accelerator

(FPGA, AI Engine)

AMD Vitis™ Runtime Library

AMD Runtime Library is a key component of Vitis™ Unified Software Platform and Vitis AI Development Environment, that enables developers to deploy on AMD adaptable platforms, while continuing to use familiar programming languages like C/C++, Python and high-level domain-specific frameworks like TensorFlow and Caffe.

AMD Runtime Library is an open-source standardized software interface that facilitates communication between the application code and the accelerated-kernels deployed on the reconfigurable portion of PCIe based Alveo accelerator cards, Zynq™ 7000, Zynq UltraScale+™ MPSoC based embedded platforms or Versal™ ACAPs. 

AMD Runtime Library runs on the Host CPU. In the case of Embedded Platforms, the Host refers to the ARM processor on the AMD platform and in the case of Alveo™ Accelerator cards, it refers to the x86-based CPU or PowerPC CPU on the server.

Features

Key Benefits

  • No Hardware Expertise, Focus on Application Development: AMD Runtime Library eliminates the need to implement hardware communication layers from scratch for AMD adaptive platforms and integrates with standard software applications, making FPGAs broadly accessible to developers, with no hardware expertise.
  • Open-Source and Flexible: AMD Runtime Library is Open-Sourced and available on GitHub under the Apache-2 license. Developers have the flexibility to use these libraries and drivers as-is or modify them to suit the needs of their custom applications and platforms.
  • Common API Across Platforms: AMD Runtime Library offers a common set of APIs for developers to design accelerated applications for Edge, On-premise and Cloud deployments. This enables seamless porting of applications between different AMD platforms as the compute requirements or deployment needs change.
  • Different Levels of Abstraction: From domain-specific APIs leveraged by Vitis AI, high-level Python bindings to low-level C++ APIs that offer finer grained control, developers can choose the level of abstraction they need to interact with AMD Runtime Library in their applications.
  • Access to Dynamic Function Exchange: AMD Runtime Library enables Application developers to leverage Dynamic Function eXchange (DFX) to easily swap out different accelerator binaries on AMD platforms, especially Alveo accelerator cards, without worrying about low-level details.
  • Resource ScalingXilinx FPGA Resource Management (XRM) offers server-based orchestration capabilities based on the Vitis Runtime Library API. This enables multiple applications to run on a pool of Alveo accelerator cards attached to a server.

Key Functions

  • FPGA Image Download: Download Accelerator Binaries onto Platform
  • Open-Source and Flexible: Data movement between Host and Accelerators
  • Board Management: Board Recovery, Debug, Power Management
  • Execution Management: Trigger, Sequence and Synchronize Computations

Getting Started