History log of /src/lib/libmd/aarch64/sha1dispatch.c (Results 1 – 6 of 6)
Revision Date Author Comments
# ec3242ed 10-Oct-2025 Robert Clausecker <fuz@FreeBSD.org>

lib/libmd: fuz@freebsd.org -> fuz@FreeBSD.org

Approved by: markj (mentor)
MFC after: 1 week


# f6210541 14-May-2025 Robert Clausecker <fuz@FreeBSD.org>

lib/libmd: add optimised SHA1 implementations for aarch64

This provides a scalar implementation and one using the SHA1
instruction set extensions.

For the scalar implementation, the w array is kept

lib/libmd: add optimised SHA1 implementations for aarch64

This provides a scalar implementation and one using the SHA1
instruction set extensions.

For the scalar implementation, the w array is kept in registers,
speeding up the whole operations. For a 10 GiB file on my Windows
2023 Dev Kit (ARM Cortex A78C / ARM Cortex X1C):

Performance core:
pre 43.1s (238 MB/s)
generic 41.3s (247 MB/s)
scalar 35.0s (293 MB/s)
sha1 12.8s (800 MB/s)

Efficiency core:
pre 54.2s (189 MB/s)
generic 55.9s (183 MB/s)
scalar 43.0s (238 MB/s)
sha1 16.2s (632 MB/s)

Reviewed by: getz
Differential Revision: https://reviews.freebsd.org/D45444

show more ...


# ec3242ed 10-Oct-2025 Robert Clausecker <fuz@FreeBSD.org>

lib/libmd: fuz@freebsd.org -> fuz@FreeBSD.org

Approved by: markj (mentor)
MFC after: 1 week


# f6210541 14-May-2025 Robert Clausecker <fuz@FreeBSD.org>

lib/libmd: add optimised SHA1 implementations for aarch64

This provides a scalar implementation and one using the SHA1
instruction set extensions.

For the scalar implementation, the w array is kept

lib/libmd: add optimised SHA1 implementations for aarch64

This provides a scalar implementation and one using the SHA1
instruction set extensions.

For the scalar implementation, the w array is kept in registers,
speeding up the whole operations. For a 10 GiB file on my Windows
2023 Dev Kit (ARM Cortex A78C / ARM Cortex X1C):

Performance core:
pre 43.1s (238 MB/s)
generic 41.3s (247 MB/s)
scalar 35.0s (293 MB/s)
sha1 12.8s (800 MB/s)

Efficiency core:
pre 54.2s (189 MB/s)
generic 55.9s (183 MB/s)
scalar 43.0s (238 MB/s)
sha1 16.2s (632 MB/s)

Reviewed by: getz
Differential Revision: https://reviews.freebsd.org/D45444

show more ...


# ec3242ed 10-Oct-2025 Robert Clausecker <fuz@FreeBSD.org>

lib/libmd: fuz@freebsd.org -> fuz@FreeBSD.org

Approved by: markj (mentor)
MFC after: 1 week


# f6210541 14-May-2025 Robert Clausecker <fuz@FreeBSD.org>

lib/libmd: add optimised SHA1 implementations for aarch64

This provides a scalar implementation and one using the SHA1
instruction set extensions.

For the scalar implementation, the w array is kept

lib/libmd: add optimised SHA1 implementations for aarch64

This provides a scalar implementation and one using the SHA1
instruction set extensions.

For the scalar implementation, the w array is kept in registers,
speeding up the whole operations. For a 10 GiB file on my Windows
2023 Dev Kit (ARM Cortex A78C / ARM Cortex X1C):

Performance core:
pre 43.1s (238 MB/s)
generic 41.3s (247 MB/s)
scalar 35.0s (293 MB/s)
sha1 12.8s (800 MB/s)

Efficiency core:
pre 54.2s (189 MB/s)
generic 55.9s (183 MB/s)
scalar 43.0s (238 MB/s)
sha1 16.2s (632 MB/s)

Reviewed by: getz
Differential Revision: https://reviews.freebsd.org/D45444

show more ...