package md5x16

import "github.com/mmcloughlin/avo/examples/md5x16"

Package md5x16 implements 16-lane parallel MD5 with AVX-512 instructions.

Index

Constants

const BlockSize = 64

BlockSize is the block size of MD5 in bytes.

const Lanes = 16

Lanes is the maximum number of parallel MD5 computations.

const Size = 16

Size of a MD5 checksum in bytes.

Functions

func Sum

func Sum(data [Lanes][]byte) [Lanes][Size]byte

Sum returns the MD5 checksum of up to Lanes data of the same length.

Non-nil inputs must all have the same length, and occupy a memory span not exceeding 32 bits.

func Validate

func Validate(data [Lanes][]byte) error

Validate checks whether the preconditions required by Sum() are met.

Source Files

md5x16.go stub.go

Version
v0.6.0 (latest)
Published
Jan 7, 2024
Platform
linux/amd64
Imports
5 packages
Last checked
1 month ago

Tools for package owners.