On 2019/7/10 下午3:30, Liu, Yong wrote:

-----Original Message-----
From: Jason Wang [mailto:jasow...@redhat.com]
Sent: Wednesday, July 10, 2019 12:28 PM
To: Liu, Yong <yong....@intel.com>; Bie, Tiwei <tiwei....@intel.com>;
maxime.coque...@redhat.com; dev@dpdk.org
Subject: Re: [dpdk-dev] [RFC PATCH 02/13] add vhost packed ring fast enqueue
function


On 2019/7/9 上午1:13, Marvin Liu wrote:
In fast enqueue function, will first check whether descriptors are
cache aligned. Fast enqueue function will check prerequisites in the
beginning. Fast enqueue function do not support chained mbufs, normal
function will handle that.

Signed-off-by: Marvin Liu <yong....@intel.com>
Any reason for not letting compiler to unroll the loops?

Hi Jason,
I'm not sure about how much compiler can help on unrolling loops as it can't 
know how much loops will create in one call.
After force not using unroll-loop optimization by "-fno-unroll-loops", 
virtio_dev_rx_packed function size remained the same.
So look like gcc unroll-loop optimization do not help here.


I meant something like "pragma GCC unroll N" just before the loop you want unrolled.

Thanks



And fast enqueue function not only did unroll loop, it also checked cache 
alignment which can help performance in another side.

Regards,
Marvin

Thanks

Reply via email to