VART HW Backend - VART HW Backend - 6.3 English - XD056

Vitis Video Analytics SDK (VVAS) 6.3 User Guide (XD056)

Document_ID
XD056
Release_Date
2026-09-24
Version
6.3 English

The input buffer must already contain the model tensor in the required format, dimensions, and layout. No resize, color conversion, layout conversion, or normalization is performed by vvas_xinfer.

Supported input memory:

  • compatible GstVvasMemory from an upstream scaler or tensor producer;

  • generic DMA-BUF that can be imported on the inference device;

  • system memory - vvas_xinfer_ensure_xrt_input_buffer() lazily allocates an internal VVAS pool on the inference device (XDNA_DEVICE_IDX, vart_info.mbank_idx, stride_align = 1) and vvas_xinfer_copy_input_buffer() memcpy’s the sysmem frame into a buffer drawn from that pool. VVAS_SYNC_TO_DEVICE is set and gst_vvas_memory_sync_bo() flushes before the VART runner reads. Same mechanism as the PPE-enabled sysmem path, just on the inference device. The buffer payload must already match the model tensor format, dimensions, and layout; no resize, conversion, or normalization is applied on this path.

For VVAS-memory input, prepare_infer_input_frame() extracts the allocator context and memory bank from the input buffer. The bank is passed to the inference path; vart-config.in-mem-bank does not gate this path.

For generic DMA-BUF input, vvas_videoframe_from_gstbuffer() imports the DMA-BUF as an XRT BO on the inference device.