• Barry Song's avatar
    dma-mapping: benchmark: pretend DMA is transmitting · 9dc00b25
    Barry Song authored
    In a real dma mapping user case, after dma_map is done, data will be
    transmit. Thus, in multi-threaded user scenario, IOMMU contention
    should not be that severe. For example, if users enable multiple
    threads to send network packets through 1G/10G/100Gbps NIC, usually
    the steps will be: map -> transmission -> unmap.  Transmission delay
    reduces the contention of IOMMU.
    
    Here a delay is added to simulate the transmission between map and unmap
    so that the tested result could be more accurate for TX and simple RX.
    A typical TX transmission for NIC would be like: map -> TX -> unmap
    since the socket buffers come from OS. Simple RX model eg. disk driver,
    is also map -> RX -> unmap, but real RX model in a NIC could be more
    complicated considering packets can come spontaneously and many drivers
    are using pre-mapped buffers pool. This is in the TBD list.
    Signed-off-by: default avatarBarry Song <song.bao.hua@hisilicon.com>
    Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
    9dc00b25
map_benchmark.c 9.25 KB