Home GnuPG

Improve performance of Tiger hash algorithms
89fa74d6b3e5Unpublished

Unpublished Commit · Learn More

Not On Permanent Ref: This commit is not an ancestor of any permanent ref.

Description

Improve performance of Tiger hash algorithms

* cipher/tiger.c (tiger_round, pass, key_schedule): Convert functions
to macros.
(transform_blk): Pass variable names instead of pointers to 'pass'.

Benchmark results on Intel Haswell @ 3.2 Ghz:

Before:

|  nanosecs/byte   mebibytes/sec   cycles/byte

TIGER | 3.25 ns/B 293.5 MiB/s 10.40 c/B

After (1.75x faster):

|  nanosecs/byte   mebibytes/sec   cycles/byte

TIGER | 1.85 ns/B 515.3 MiB/s 5.92 c/B

Benchmark results on Cortex-A8 @ 1008 Mhz:

Before:

|  nanosecs/byte   mebibytes/sec   cycles/byte

TIGER | 63.42 ns/B 15.04 MiB/s 63.93 c/B

After (1.26x faster):

|  nanosecs/byte   mebibytes/sec   cycles/byte

TIGER | 49.99 ns/B 19.08 MiB/s 50.39 c/B

  • Signed-off-by: Jussi Kivilinna <jussi.kivilinna@iki.fi>

Details

Provenance
jukiviliAuthored on Nov 1 2015, 7:44 PM
Parents
rCa1cc7bb15473: Add ARMv7/NEON implementation of Keccak
Branches
Unknown
Tags
Unknown

Event Timeline

Jussi Kivilinna <jussi.kivilinna@iki.fi> committed rC89fa74d6b3e5: Improve performance of Tiger hash algorithms (authored by Jussi Kivilinna <jussi.kivilinna@iki.fi>).Nov 1 2015, 8:50 PM