[dpdk-dev] [memnic PATCH 7/7] pmd: split calling mbuf free

Wiles, Roger Keith keith.wiles at windriver.com
Thu Sep 25 04:18:19 CEST 2014


On Sep 24, 2014, at 8:12 PM, Hiroshi Shimamoto <h-shimamoto at ct.jp.nec.com> wrote:

> Hi Thomas, Keith,
> 
>> Subject: Re: [dpdk-dev] [memnic PATCH 7/7] pmd: split calling mbuf free
>> 
>> 
>> On Sep 24, 2014, at 10:20 AM, Thomas Monjalon <thomas.monjalon at 6wind.com> wrote:
>> 
>>> 2014-09-11 07:52, Hiroshi Shimamoto:
>>>> @@ -408,9 +408,9 @@ retry:
>>>> 
>>>> 		rte_compiler_barrier();
>>>> 		p->status = MEMNIC_PKT_ST_FILLED;
>>>> -
>>>> -		rte_pktmbuf_free(tx_pkts[nr]);
>>>> 	}
>>>> +	for (i = 0; i < nr; i++)
>>>> +		rte_pktmbuf_free(tx_pkts[i]);
>>>> 
>>>> 	/* stats */
>>>> 	st->opackets += pkts;
>>>> 
>>> 
>>> You are bursting mbuf freeing. Why title is about "split”?
> 
> I thought that in this patch splits main loop operations to putting content and
> freeing mbuf, then took work "split", but I see "burst mbuf freeing" is preferable.
> 
>> 
>> Maybe this should be a new API as in rte_pktmbuf_bulk_free(tx_pkts, nr); ??
>> This would remove the loop in the application and I know I have done the same thing for Pktgen too.
> 
> Good point, yes, I'm thinking that having new API like rte_pktmbuf_(alloc|free)_bulk()
> is good to reduce TLS access and gain performance.
> I put that on my stack, but haven't had a time yet.
> 
> Do you have any plan to do such thing?

I do not have any plans, but the alloc would be good too.
> 
> thanks,
> Hiroshi
> 
>>> 
>>> --
>>> Thomas
>> 
>> Keith Wiles, Principal Technologist with CTO office, Wind River mobile 972-213-5533

Keith Wiles, Principal Technologist with CTO office, Wind River mobile 972-213-5533



More information about the dev mailing list