Thread (100 messages) 100 messages, 10 authors, 2017-01-19

Re: [PATCH v2 03/12] crypto/armv8: Add core crypto operations for ARMv8

From: Thomas Monjalon <hidden>
Date: 2016-12-06 21:42:53

2016-12-07 02:48, Jerin Jacob:
On Tue, Dec 06, 2016 at 09:29:25PM +0100, Thomas Monjalon wrote:
quoted
2016-12-06 18:32, zbigniew.bodek@caviumnetworks.com:
quoted
From: Zbigniew Bodek <redacted>

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?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help