[dpdk-dev] [memnic PATCH 1/7] guest: memnic-tester: PMD benchmark in guest

Thomas Monjalon thomas.monjalon at 6wind.com
Thu Sep 25 11:02:04 CEST 2014


> > >  master |<- put packets ->|     |<- get packets ->|
> > >  slave  |   |<- rx packets ->|<- tx packets ->|   |
> > >         |<----------------- set ----------------->|
> > >
> > > Measuring how many sets in the certain period, that represents
> > > the MEMNIC PMD performance. The master workload must be very low.
> > 
> > Sorry, I don't really understand this diagram and the associated explanation.
> > Could you try to reword it?
> 
> sure, will make more understandable description.
> Could you please help me to do that?
> 
> The purpose of this program is measuring the performance of MEMNIC PMD itself.
> It means that we'd like to know how much the PMD takes in rx and tx API.
> The program does rx and tx in the slave thread and the PMD performance could
> be measured how much packets are handled in certain period. By the way we
> need to fill and clear MEMNIC packet buffer for enabling to work the PMD rx/tx
> in the slave thread. Then, I made the master thread which fills and clears
> MEMNIC packet buffer in the lightest way, and it should be with the least jitter.
> If we generate a real packet out of VM, that may cause increasing jitter
> outside of the MEMNIC PMD, it means we will not see the precise performance
> of MEMNIC PMD itself.
> 
> Can you see the concept of this benchmark with the above?

Yes. But I think master and slave roles are confused.
I try to reword it with less words:

memnic-tester is a benchmark tool to measure performance of MEMNIC PMD itself.
The master thread forward packets with Rx and Tx bursts. 
The slave thread fills and clears packets in the lightest way. It doesn't get
packet out of VM because it would increase jitter and hide PMD performance.
Throughput (number of forwarded packets per second) is given for each frame size.

-- 
Thomas


More information about the dev mailing list