From 65a2f158bbb3415abe83d454d2dc7235e65a77cc Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Wed, 17 Jan 2024 00:03:18 +0000 Subject: gnu: go-github-com-minio-sha256-simd: Move to (gnu packages golang-crypto). * gnu/packages/golang.scm (go-github-com-minio-sha256-simd): Move from here ... * gnu/packages/golang-crypto.scm: ... to here. * gnu/packages/backup.scm: Add (gnu packages golang-crypto) to used modules. Change-Id: I4e57a1bee0c7e19a9bb60ce5ff72ccd5e42deea5 --- gnu/packages/golang-crypto.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'gnu/packages/golang-crypto.scm') diff --git a/gnu/packages/golang-crypto.scm b/gnu/packages/golang-crypto.scm index 23c47712a5..c57c525a49 100644 --- a/gnu/packages/golang-crypto.scm +++ b/gnu/packages/golang-crypto.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Pierre Neidhardt +;;; Copyright © 2019 Ricardo Wurmus ;;; Copyright © 2019 Vagrant Cascadian ;;; Copyright © 2019, 2020 Leo Famulari ;;; Copyright © 2021 Arun Isaac @@ -379,6 +380,39 @@ library's internal ChaCha20 package.") the Go standard library's TLS 1.3 implementation.") (license license:bsd-3))) +(define-public go-github-com-minio-sha256-simd + (package + (name "go-github-com-minio-sha256-simd") + (version "0.1.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/minio/sha256-simd") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1j0iqsckm97g4l79vd4mc7apbmkdar23jpzqpnpdhwpfd834j8lp")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/minio/sha256-simd")) + (home-page "https://github.com/minio/sha256-simd") + (synopsis "Accelerate SHA256 computations in pure Go") + (description "Accelerate SHA256 computations in pure Go using AVX512 and +AVX2 for Intel and ARM64 for ARM. On AVX512 it provides an up to 8x +improvement (over 3 GB/s per core) in comparison to AVX2. + +This package is designed as a replacement for @command{crypto/sha256}. For +Intel CPUs it has two flavors for AVX512 and AVX2 (AVX/SSE are also +supported). For ARM CPUs with the Cryptography Extensions, advantage is taken +of the SHA2 instructions resulting in a massive performance improvement. + +This package uses Golang assembly. The AVX512 version is based on the Intel's +\"multi-buffer crypto library for IPSec\" whereas the other Intel +implementations are described in \"Fast SHA-256 Implementations on Intel +Architecture Processors\" by J. Guilford et al.") + (license license:asl2.0))) + (define-public go-github-com-multiformats-go-multihash (let ((commit "97cdb562a04c6ef66d8ed40cd62f8fbcddd396d6") (revision "0")) -- cgit v1.2.3