On Thu, Jun 26, 2014 at 6:16 PM, Ryan Wilson <wr...@nicira.com> wrote:
> Since dropped packets due to large packet size or lack of memory
> are unlikely, it is best to add OVS_UNLIKELY annotations to these
> conditions.
>
> With DPDK fast path forwarding test, this increased throughtput
> from 4.12 to 4.16 million packets per second.
>
I am not sure what do you mean by forwarding case, when forwarding
from one dpdk to another dpdk port, there should not be any copy
operation. Therefore dpdk_do_tx_copy() does not effect performance.


> Signed-off-by: Ryan Wilson <wr...@nicira.com>
> ---
>  lib/netdev-dpdk.c |    4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
> index 0aee14e..03f1e02 100644
> --- a/lib/netdev-dpdk.c
> +++ b/lib/netdev-dpdk.c
> @@ -664,7 +664,7 @@ dpdk_do_tx_copy(struct netdev *netdev, struct dpif_packet 
> ** pkts, int cnt)
>
>      for (i = 0; i < cnt; i++) {
>          int size = ofpbuf_size(&pkts[i]->ofpbuf);
> -        if (size > dev->max_packet_len) {
> +        if (OVS_UNLIKELY(size > dev->max_packet_len)) {
>              VLOG_WARN_RL(&rl, "Too big size %d max_packet_len %d",
>                           (int)size , dev->max_packet_len);
>
> @@ -688,7 +688,7 @@ dpdk_do_tx_copy(struct netdev *netdev, struct dpif_packet 
> ** pkts, int cnt)
>          newcnt++;
>      }
>
> -    if (dropped) {
> +    if (OVS_UNLIKELY(dropped)) {
>          ovs_mutex_lock(&dev->mutex);
>          dev->stats.tx_dropped += dropped;
>          ovs_mutex_unlock(&dev->mutex);
> --
> 1.7.9.5
>
> _______________________________________________
> dev mailing list
> dev@openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to