Hi Hemasai You can see the comments in code like " /* A.1 load 4 pkts desc */ ", it use vector instruction to handle HW desc *in batch*.
And also, you can change it to non-vector function by adjust some parameters, please refer to i40e_set_rx_function for detail, it has debug message for your reference. BR, Haiyue From: Perugu Hemasai Chandra Prasad [mailto:hemasaiper...@5g.iith.ac.in] Sent: Tuesday, September 3, 2019 17:48 To: Wang, Haiyue <haiyue.w...@intel.com> Cc: us...@dpdk.org; dev@dpdk.org Subject: Re: [dpdk-dev] unable to receive packets less than 4 with rte_eth_rx_burst Api -regarding. Hi Haiyue, It is working ,thanks for your response. can you please tell what kind of performance limitation we have if RTE_I40E_DESCS_PER_LOOP value is less than 4 ? Thanks & Regards, Hemasai On Tue, Sep 3, 2019 at 2:53 PM Perugu Hemasai Chandra Prasad <hemasaiper...@5g.iith.ac.in> wrote: Hi, I tried changing "RTE_I40E_DESCS_PER_LOOP" located in i40e_rxtx.h to 1 and recompiling DPDK but it didn't work. Is there any procedure to make it work for rx_burst of 1 packet? On Tue, 3 Sep, 2019, 12:32 Wang, Haiyue, <haiyue.w...@intel.com> wrote: Some PMD Vector Rx for performance has an hidden limitation like : /* nb_pkts shall be less equal than RTE_I40E_MAX_RX_BURST */ nb_pkts = RTE_MIN(nb_pkts, RTE_I40E_MAX_RX_BURST); /* nb_pkts has to be floor-aligned to RTE_I40E_DESCS_PER_LOOP */ nb_pkts = RTE_ALIGN_FLOOR(nb_pkts, RTE_I40E_DESCS_PER_LOOP); <------ ;-) #define RTE_I40E_DESCS_PER_LOOP 4 BR, Haiyue > -----Original Message----- > From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Perugu Hemasai Chandra > Prasad > Sent: Tuesday, September 3, 2019 13:00 > To: us...@dpdk.org; dev@dpdk.org > Subject: [dpdk-dev] unable to receive packets less than 4 with > rte_eth_rx_burst Api -regarding. > > Hi All, > I am trying to receive packets transmitted by another DPDK > application running on different system. I am able to transmit packets with > a burst value of 1 using rte_eth_tx_burst Api, but unable to receive > packets with a burst value less than 4 using rte_eth_rx_burst Api. can > anyone please tell me the reason behind that? Is that because of any EthDev > configuration?. How to receive packets with a burst value of 1? > > Thanks & Regards, > Hemasai