DMA Latency Application (dma-latency)ΒΆ

Xilinx-developed custom tool dma-latency is used to collect the latency metrics for unidirectional and bidirectional traffic.

usage: dma-latency [OPTIONS

  -c (--config) config file that has configuration for IO

dma-latency tool takes a configuration file as input. The configuration file format is as below.

name=mm_1_1
mode=mm #mode
dir=bi #dir
pf_range=0:0 #no spaces
q_range=0:0 #no spaces
wb_acc=5
tmr_idx=9
cntr_idx=0
trig_mode=usr_cnt
rngidx=9
ram_width=15 #31 bits - 2^31 = 2GB
runtime=30 #secs
num_threads=8
bidir_en=1
num_pkt=64
pkt_sz=64

Parameters

  • name : name of the configuration

  • mode : mode of the queue, streaming(st) or memory mapped(mm). Mode defaults to mm.

  • dir : Direction of the queue, host-to-card(h2c), card-to-host (c2h) or both (bi).

  • pf_range : Range of the PFs from 0-3 on which the performance metrics are to be collected.

  • q_range : Range of the Queues from 0-2047 on which the performance metrics are to be collected.

  • flags : queue flags

  • wb_acc : write back accumulation index from CSR register ( 0 - 15 )

  • tmr_idx : timer index from CSR register ( 0 - 15 )

  • cntr_idx : Counter index from CSR register ( 0 - 15 )

  • trig_mode : trigger mode (every, usr_cnt, usr, usr_tmr, dis)

  • rngidx : Ring index from CSR register ( 0 - 15 )

  • runtime : Duration of the performance runs, time in seconds.

  • num_threads : number of threads to be used in dma-perf application to pump the traffic to queues

  • bidir_en : Enable or Disable the bi-direction mode ( 0: Disable, 1: Enable )

  • num_pkt : number of packets

  • pkt_sz : Packet size