[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190412095243.GA27193@fuggles.cambridge.arm.com>
Date: Fri, 12 Apr 2019 10:52:43 +0100
From: Will Deacon <will.deacon@....com>
To: Zhangshaokun <zhangshaokun@...ilicon.com>
Cc: Ard Biesheuvel <ard.biesheuvel@...aro.org>,
linux-arm-kernel@...ts.infradead.org, netdev@...r.kernel.org,
ilias.apalodimas@...aro.org,
"huanglingyan (A)" <huanglingyan2@...wei.com>,
steve.capper@....com, robin.murphy@....com
Subject: Re: [PATCH] arm64: do_csum: implement accelerated scalar version
On Fri, Apr 12, 2019 at 10:31:16AM +0800, Zhangshaokun wrote:
> On 2019/2/19 7:08, Ard Biesheuvel wrote:
> > It turns out that the IP checksumming code is still exercised often,
> > even though one might expect that modern NICs with checksum offload
> > have no use for it. However, as Lingyan points out, there are
> > combinations of features where the network stack may still fall back
> > to software checksumming, and so it makes sense to provide an
> > optimized implementation in software as well.
> >
> > So provide an implementation of do_csum() in scalar assembler, which,
> > unlike C, gives direct access to the carry flag, making the code run
> > substantially faster. The routine uses overlapping 64 byte loads for
> > all input size > 64 bytes, in order to reduce the number of branches
> > and improve performance on cores with deep pipelines.
> >
> > On Cortex-A57, this implementation is on par with Lingyan's NEON
> > implementation, and roughly 7x as fast as the generic C code.
> >
> > Cc: "huanglingyan (A)" <huanglingyan2@...wei.com>
> > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@...aro.org>
> > ---
> > Test code after the patch.
>
> Hi maintainers and Ard,
>
> Any update on it?
I'm waiting for Robin to come back with numbers for a C implementation.
Robin -- did you get anywhere with that?
Will
Powered by blists - more mailing lists