[dpdk-dev] [PATCH v2 03/20] i40e: call i40e_txd_enable_checksum only for offloaded packets
Olivier MATZ
olivier.matz at 6wind.com
Wed Feb 11 18:13:36 CET 2015
Hi Helin,
On 02/11/2015 06:32 AM, Zhang, Helin wrote:
>> On 02/10/2015 07:03 AM, Zhang, Helin wrote:
>>>> /* Enable checksum offloading */
>>>> cd_tunneling_params = 0;
>>>> - i40e_txd_enable_checksum(ol_flags, &td_cmd, &td_offset,
>>>> - l2_len, l3_len, outer_l2_len,
>>>> - outer_l3_len,
>>>> - &cd_tunneling_params);
>>>> + if (ol_flags & I40E_TX_CKSUM_OFFLOAD_MASK) {
>>> likely should be added.
>>
>> I would say unlikely() instead. I think the non-offload case should be the default
>> one. What do you think?
Maybe you missed this comment. Any thoughts?
>>>> + i40e_txd_enable_checksum(ol_flags, &td_cmd, &td_offset,
>>>> + l2_len, l3_len, outer_l2_len,
>>>> + outer_l3_len,
>>>> + &cd_tunneling_params);
>>>> + }
>>> As this code changes are in fast path, performance regression test is
>>> needed. I would like to see the performance difference with or without
>>> this patch set. Hopefully nothing different. If you need any helps, just let me
>> know.
>>
>> I'm sorry, I won't have the needed resources to bench this as I would have to
>> setup a performance platform with i40e devices.
>>
>> But I'm pretty sure that the code in non-offload case would be faster with this
>> patch as it will avoid many operations in i40e_txd_enable_checksum().
>>
>> For the offload case, as we also removed the if (l2_len == 0) and if (l3_len == 0),
>> I think there are also less tests than before my patch series.
>>
>> So in my opinion, adding this test does not really justify to check the
>> performance.
> As 40G is quite sensitive on cpu cycles, we'd better to avoid any performance drop
> during our modifying the code for fast path. Performance is what we care about too
> much. Based on my experiences, even minor code changes may result in big
> performance impact.
> It seems that we may need to help you on performance measurement.
Thanks, indeed it's helpful if you can check performance non-regression.
Regards,
Olivier
More information about the dev
mailing list