Messages in this thread | | | Date | Tue, 27 Jun 2023 16:05:31 -0700 | Subject | Re: [GIT PULL] x86/misc for 6.5 | From | Arjan van de Ven <> |
| |
On 6/27/2023 4:02 PM, Linus Torvalds wrote: > On Tue, 27 Jun 2023 at 15:51, Arjan van de Ven <arjan@linux.intel.com> wrote: >> >> I'm not surprised though; running 2 parallel streams (where one stream has a fixed zero as input, >> so can run OOO any time) .. can really have a performance change like this > > How much do people care? > > One of the advantages of just having that single "update_csum_40b()" > function is that it's trivial to then manually unroll. > > With a 4-way unrolling, I get > > 02: 184.0 / 184.5 cycles (8b414316) Upcoming linux kernel version > 04: 184.0 / 184.2 cycles (8b414316) Specialized to size 40 > 06: 89.4 / 102.5 cycles (512daed6) New version > 22: 184.6 / 184.4 cycles (8b414316) Odd-alignment handling removed > > but doesn't most network hardware do the csum on its own anyway? How > critical is csum_partial(), really?
the hardware does most cases.. in https://lore.kernel.org/netdev/20211111181025.2139131-1-eric.dumazet@gmail.com/ Eric kind of implies it's for IPv6 headers in practice
| |