www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - Added xxhash 0.8.1 DUB module (D implementation)

reply Carsten Schlote <carsten.schlote gmx.net> writes:
Source: https://gitlab.com/carsten.schlote/xxhash3
Dub Code: https://code.dlang.org/packages/xxhash3

This is an implementation of the XXHASH non-cryptographic 
digests, version 0.8.1, in D code.

The subdirectory "./demos" contains a simple test dub project.

This module conforms to the APIs defined in `std.digest`.

The XXH3 64 and 128 bit variants do not yet use the vector units 
provided by some architectures.

Optimized code already outperforms the phobos built-in digest 
types. See the benchmarks reported by tool at 
https://gitlab.com/carsten.schlote/hashbench

Open issues/ToDos:
- Apply more optimisations, eleminate more C-ish code, improve 
performance
- Add vector unit support for XXH3 variants
- Apply for inclusion into lib phobos, when code reached a 
matured state.
May 29
parent Paul Backus <snarwin gmail.com> writes:
On Sunday, 29 May 2022 at 07:43:20 UTC, Carsten Schlote wrote:
 Source: https://gitlab.com/carsten.schlote/xxhash3
 Dub Code: https://code.dlang.org/packages/xxhash3
[...]
 Optimized code already outperforms the phobos built-in digest 
 types. See the benchmarks reported by tool at 
 https://gitlab.com/carsten.schlote/hashbench
Great work! High-quality implementations of foundational algorithms like these are always a welcome addition to the D ecosystem. :)
May 29