2016-12-07 02:48, Jerin Jacob: > On Tue, Dec 06, 2016 at 09:29:25PM +0100, Thomas Monjalon wrote: > > 2016-12-06 18:32, zbigniew.bo...@caviumnetworks.com: > > > From: Zbigniew Bodek <zbigniew.bo...@caviumnetworks.com> > > > > > > This patch adds core low-level crypto operations > > > for ARMv8 processors. The assembly code is a base > > > for an optimized PMD and is currently excluded > > > from the build. > > > > It's a bit sad that you cannot achieve the same performance with > > C code and a good compiler. > > Have you tried it? How much is the difference? > > Like AES-NI on IA side(exposed as separate PMD in dpdk), > armv8 has special dedicated instructions for crypto operation using SIMD. > This patch is using the "dedicated" armv8 crypto instructions and SIMD > operation to achieve better performance.
It does not justify to have all the code in asm. > We had compared with openssl implementation.Here is the performance > improvement for chained crypto operations case WRT openssl pmd > > Buffer > Size(B) OPS(M) Throughput(Gbps) > 64 729 % 742 % > 128 577 % 592 % > 256 483 % 476 % > 512 336 % 351 % > 768 300 % 286 % > 1024 263 % 250 % > 1280 225 % 229 % > 1536 214 % 213 % > 1792 186 % 203 % > 2048 200 % 193 % OK but what is the performance difference between this asm code and a C equivalent?