We are now tracking changes for AltiVec and Power8 support at Issue 487, 
Improve 
under-aligned buffers for AltiVec and Power8 
(https://github.com/weidai11/cryptopp/issues/487).

The task includes 5 check-ins at the moment. The check-ins implement 
Rijndael::OptimalDataAlignment() so callers can query for the alignment 
requirements. The check-ins provide a debug assert to alert of 
under-aligned and mis-aligned buffers. It also perform alignment fixups so 
things "just work" for callers.

The most important check-in, cut-in of the actual support for AES using 
in-core crypto, is hampered at the moment. We've still got a bad write 
somewhere. For those who are interested, here is what it looks like under a 
single block: https://pastebin.com/5UjYLhU5.

It looks library the library performs better overall with aligned buffers. 
For example:

  SecByteBlock
    - Poly1305: 3.4 cpb
    - Blake2s: 6.7 cpb
    - Blake2b: 4.5 cpb
    - SipHash-2-4: 3.1 cpb
    - SipHash-4-8: 3.5 cpb
    - ChaCha20: 7.4 cpb
    - ChaCha12: 4.6 cpb
    - ChaCha8: 3.5 cpb 

  AlignedSecByteBlock
    - Poly1305: 2.9 cpb
    - Blake2s: 5.5. cpb
    - Blake2b: 3.9 cpb
    - SipHash-2-4: 1.9 cpb
    - SipHash-4-8: 3.3 cpb
    - ChaCha20: 6.0 cpb
    - ChaCha12: 4.0 cpb
    - ChaCha8: 2.9 cpb 

32-bit code performs as well as it did in the past. it did not gain 
performance, and it did not lose performance.

I'm guessing the downside is memory pressures and fragmentation. I think it 
is less of a problem today then it was in 1995 when Wei wrote the library.

Jeff

-- 
-- 
You received this message because you are subscribed to the "Crypto++ Users" 
Google Group.
To unsubscribe, send an email to cryptopp-users-unsubscr...@googlegroups.com.
More information about Crypto++ and this group is available at 
http://www.cryptopp.com.
--- 
You received this message because you are subscribed to the Google Groups 
"Crypto++ Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cryptopp-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to