Forwarded to the list.

---------- Forwarded message ----------
From: Jeffrey Walton <[email protected]>
To: "Niels Möller" <[email protected]>
Cc: [email protected]
Bcc:
Date: Thu, 8 Feb 2018 16:34:43 -0500
Subject: Re: x86 sha_ni
On Thu, Feb 8, 2018 at 12:18 PM, Niels Möller <[email protected]> wrote:
> [email protected] (Niels Möller) writes:
>
>> Below replacement for sha1-compress.asm seems to run on roughly 2
>> cycles/byte when I benchmark it on an "AMD Ryzen 7 1700X" cpu in the gcc
>> compile farm. Still sligthly slower than openssl, to squeeze out a few
>> more cycles, it might help to change the sha1_compress interface to let
>> it process more than one 64-byte block at a time.
>>
>> I hope to be able to wire it up via fat-x86_64.c reasonably soon. In the
>> mean time, if anyone wants to try it out, just change the
>> sha1-compress.asm symlink to point to this file.
>
> Enabled via fat-x86_64 now, and pushed to a branch named
> x86_64-sha_ni-sha1.

Looks good on a Celeron J3455, which is a [low-end] Goldmont machine
with the instructions:

goldmont:nettle$ autoreconf -f -i
...

goldmont:nettle$ ./configure --enable-fat
...

goldmont:nettle$ make && make check
...

goldmont:nettle$ LD_LIBRARY_PATH=.lib:/usr/local/lib64/
./examples/nettle-benchmark
sha1_compress: 84.60 cycles
salsa20_core: 282.80 cycles
sha3_permute: 1542.60 cycles (64.27 / round)

benchmark call overhead: 0.001604 us
         Algorithm         mode Mbyte/s
           ...

               md2       update    6.90
               md4       update  568.11
               md5       update  384.08
       openssl md5       update  443.76
              sha1       update 1194.33
      openssl sha1       update 1321.71
            sha224       update  110.31
            sha256       update  110.10
            sha384       update  174.32
            sha512       update  173.99
        sha512-224       update  174.35
        sha512-256       update  174.16
          sha3_224       update  136.77
          sha3_256       update  129.46
          sha3_384       update   99.23
          sha3_512       update   69.25
         ripemd160       update  161.00
        gosthash94       update   39.48
            umac32       update 6560.05
            umac64       update 3130.26
            umac96       update 2457.21
           umac128       update 1936.56
      poly1305-aes       update  914.79
           ...

A small suggestion may be to update Section 8 Installation
(https://www.lysator.liu.se/~nisse/nettle/nettle.html). It was not
obvious to me how to enable the hardware acceleration. A quick
sentence on how to enable AES-NI and SHA would make it obvious for
future readers. (Thanks for the offline help).

Jeff

-- 
Niels Möller. PGP-encrypted email is preferred. Keyid 368C6677.
Internet email is subject to wholesale government surveillance.

_______________________________________________
nettle-bugs mailing list
[email protected]
http://lists.lysator.liu.se/mailman/listinfo/nettle-bugs

Reply via email to