libgcrypt: POWER AES Vector Acceleration
Closed, ResolvedPublic

Assigned To
Authored By
gcwilson
May 20 2019, 7:01 PM

Description

Use POWER8 and POWER9 ISA enhancements to improve the performance of AES. Demonstrate why achieved performance is close to optimal for the platform. Optimized implementations in the Cryptogams repository[1] may serve as useful references. Financial bounty upon completion and community acceptance of patches.

https://github.com/dot-asm/cryptogams/

Event Timeline

I don't know. That would make it a relatively easy transplant. We've also used the Cryptogams code as a reference for Golang enhancements, if that helps. I'd welcome guidance on the matter from a maintainer.

I'm looking into doing a pretty epic hack of using the switch_endian syscall to speed this up.

werner renamed this task from [$] libgcrypt: POWER AES Vector Acceleration to libgcrypt: POWER AES Vector Acceleration.May 21 2019, 7:47 AM
werner triaged this task as Normal priority.May 21 2019, 7:51 AM
werner added a subscriber: werner.

Perl would be okay for maintainer mode but not for regular builds. The reason is that perl is already used by autotools but a build shall still be possible w/o perl.

johnmar raised the priority of this task from Normal to Needs Triage.Jul 15 2019, 9:09 PM
werner triaged this task as Normal priority.Jul 16 2019, 8:33 AM

Please do not change the priority back. That is a maintainer's task. I consider this along with adding replicas of issues to a bit rude.

jukivili added a subscriber: jukivili.

Patches for PowerPC AES acceleration sent to mailing-list, based partly on initial work by Shawn Landden (@slandden): https://lists.gnupg.org/pipermail/gcrypt-devel/2019-August/004788.html

Because there was license concerns with Cryptogams code (https://lists.gnupg.org/pipermail/gcrypt-devel/2019-July/004774.html), I decided to implemented missing parts for this myself.