Descripción general

Vitis Runtime Library diagram

Host

(x86, PowerPC o CPU ARM)

Acelerador

(FPGA, motor de IA)

AMD Vitis™ Runtime Library

AMD Runtime Library es un componente clave de Vitis™ Unified Software Platform y del entorno de desarrollo de IA de Vitis, que permite a los desarrolladores realizar implementaciones en plataformas adaptables de AMD, mientras continúan utilizando lenguajes de programación familiares como C/C++, Python y marcos específicos de dominio de alto nivel como TensorFlow y Caffe.

AMD Runtime Library es una interfaz de software estandarizada de código abierto que facilita la comunicación entre el código de la aplicación y los kernels acelerados implementados en la porción reconfigurable de las tarjetas aceleradoras Alveo basadas en PCIe, plataformas integradas basadas en MPSoC Zynq UltraScale+™ y Zynq™ 7000 o ACAP Versal™. 

AMD Runtime Library se ejecuta en la CPU host. En el caso de las plataformas integradas, el host se refiere al procesador ARM en la plataforma AMD y en el caso de las tarjetas aceleradoras Alveo™, se refiere a la CPU basada en x86 o CPU PowerPC en el servidor.

Características

Beneficios clave

  • Sin experiencia en hardware, centrado en el desarrollo de aplicaciones: AMD Runtime Library elimina la necesidad de implementar capas de comunicación de hardware desde cero para plataformas adaptables de AMD y se integra en aplicaciones de software estándares, lo cual hace que las FPGA sean ampliamente accesibles para los desarrolladores, sin experiencia en hardware.
  • De código abierto y flexible: AMD Runtime Library es de código abierto y está disponible en GitHub con la licencia Apache-2. Los desarrolladores tienen la flexibilidad de usar estas bibliotecas y estos controladores tal como están o modificarlos para adaptarse a las necesidades de sus aplicaciones y plataformas personalizadas.
  • API en común en todas las plataformas: AMD Runtime Library ofrece un conjunto común de API para que los desarrolladores diseñen aplicaciones aceleradas para implementaciones en el perímetro, en las instalaciones y en la nube. Esto permite la migración sin interrupciones de aplicaciones entre diferentes plataformas AMD a medida que cambian los requisitos de procesamiento o las necesidades de implementación.
  • Diferentes niveles de abstracción: desde API específicas de dominio aprovechadas por enlaces Python de alto nivel de Vitis AI hasta API de C++ de bajo nivel que ofrecen un control detallado, los desarrolladores pueden elegir el nivel de abstracción que necesitan para interactuar con AMD Runtime Library en sus aplicaciones.
  • Acceso al intercambio de funciones dinámicas: AMD Runtime Library permite a los desarrolladores de aplicaciones aprovechar el DFX (Dynamic Function eXchange, intercambio de funciones dinámicas) para intercambiar de forma fácil diferentes binarios de acelerador en plataformas AMD, especialmente las tarjetas aceleradoras Alveo, sin preocuparse por los detalles de bajo nivel.
  • Escalamiento de los recursosXilinx FPGA Resource Management (XRM) ofrece compatibilidad de orquestación basada en servidor a partir de la API de Vitis Runtime Library. Esto permite que varias aplicaciones se ejecuten en un grupo de tarjetas aceleradoras Alveo conectadas a un servidor.

Funciones clave

  • Descarga de imágenes de FPGA: descarga binarios de acelerador en la plataforma
  • De código abierto y flexible: movimiento de datos entre el host y los aceleradores
  • Administración de placas: recuperación, depuración y administración de energía de las placas
  • Gestión de la ejecución: desencadenación, secuenciación y sincronización de cálculos

Introducción