All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Miller <davem@davemloft.net>
To: dada1@cosmosbay.com
Cc: mchan@broadcom.com, netdev@vger.kernel.org
Subject: Re: [PATCH] bnx2: bnx2_tx_int() optimizations
Date: Sun, 17 May 2009 20:48:10 -0700 (PDT)	[thread overview]
Message-ID: <20090517.204810.15778716.davem@davemloft.net> (raw)
In-Reply-To: <4A0A6D22.5060007@cosmosbay.com>

From: Eric Dumazet <dada1@cosmosbay.com>
Date: Wed, 13 May 2009 08:48:02 +0200

> When using bnx2 in a high transmit load, bnx2_tx_int() cost is pretty high.
 ...
> This patch :
> 
> 1) avoids calling bnx2_get_hw_tx_cons(bnapi) too many times.
> 
> 2) makes bnx2_start_xmit() cache is_gso & nr_frags into sw_tx_bd descriptor.
>    This uses a litle bit more ram (256 longs per device on x86), but helps a lot.
> 
> 3) uses a prefetch(&skb->end) to speedup dev_kfree_skb(), bringing
>   cache line that will be needed in skb_release_data()
> 
> 
> result is 5 % bandwidth increase in benchmarks, involving UDP or TCP receive
>  & transmits, when a cpu is dedicated to ksoftirqd for bnx2.
> 
> bnx2_tx_int going from 3.33 % cpu to 0.5 % cpu in oprofile
> 
> Note : skb_dma_unmap() still very expensive but this is for another patch, 
> not related to bnx2 (2.9 % of cpu, while it does nothing on x86_32)
> 
> Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>

Looks great, I've applied this, thanks Eric!

      reply	other threads:[~2009-05-18  3:48 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-13  6:48 [PATCH] bnx2: bnx2_tx_int() optimizations Eric Dumazet
2009-05-18  3:48 ` David Miller [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090517.204810.15778716.davem@davemloft.net \
    --to=davem@davemloft.net \
    --cc=dada1@cosmosbay.com \
    --cc=mchan@broadcom.com \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.