Re: DMD now incorporates a disassembler
On Friday, 7 January 2022 at 21:41:55 UTC, Walter Bright wrote: Compile with -vasm to see it! Enjoy! Oh very nice! I need to finish my debugger/disassembler project.
blake2-d 0.1
Hey people, I'm announcing my implementation of the BLAKE2 hashing algorithm package at https://github.com/dd86k/blake2-d blake2-d supports (so far) the b and s variants at version v0.1.0. Tested results with OpenSSL and these tests are reinforced in unittests. Sadly, HMAC is not yet supported because the way it's done in BLAKE2 is... Particular. None the less, it has been published to the DUB registry at https://code.dlang.org/packages/blake2-d For more information about BLAKE2, you can visit blake2.net or see IETF RFC 7693. Now off-topic, yes, I do plan to implement BLAKE3 in a separate package. And as for my sha3-d package, for those who don't know, is currently at version 1.2.1, which includes fixes for OOP and HMAC usage.
Re: sha3-d
On Friday, 5 November 2021 at 07:00:06 UTC, bauss wrote: What was the reasoning? I can't imagine it being worse than some of the terrible modules like std.json? I have nothing against the decision, but you can read the comments here: https://github.com/dlang/phobos/pull/7713 I should still add support for some kind of acceleration (e.g., core.simd). The liberty I have with this being a DUB package is that I could even use intel-intrinsics.
Re: sha3-d
On Saturday, 30 October 2021 at 09:59:38 UTC, Johan wrote: The readme mentions compilation with `-b release-nobounds`. 1. These are flags for DUB (?), can you add/replace it with the conversion to actual compiler flags? I can do a manual compilation section. Though, it is documentation online: https://dub.pm/package-format-sdl.html#build-types 2. Did you test without removing bounds checks? If there is a noticable performance drop, I think it'd be very worthwhile to modify the code such that there is no penalty of boundschecks (at -O3); I think in theory only very few bounds checks are needed. Enabling good performance _with_ boundschecks on means that the user is not forced to build his whole project without boundschecks, or move to separate compilation. I haven't tested it with bounds checking. I could do a round of benchmarks with different compilers and build types.
Re: sha3-d
On Friday, 29 October 2021 at 16:02:14 UTC, Luís Ferreira wrote: On Fri, 2021-10-29 at 15:13 +, dd via Digitalmars-d-announce wrote: Hello all! When I submitted my work to Phobos[1] earlier this year, it was rejected. (Understandably) So I made a DUB package and forgot to announce it here! Package: https://code.dlang.org/packages/sha3-d Source: https://github.com/dd86k/sha3-d [1] https://github.com/dlang/phobos/pull/7713 Amazing work dd! Are you considering implementing it with SIMD instructions with something like intel-intrinsics? That would be interesting, especially this is my kind of stuff. I'll be up to do it.
Re: sha3-d
On Friday, 29 October 2021 at 15:18:39 UTC, WebFreak001 wrote: Awesome! Haven't had the need to use SHA-3 yet myself, but given all the other growing ecosystems where this could be of use it's nice to have this high-performance implementation already. SHA-3 has been in use in SQLite and in Euthereum for a while, which are enormous projects. SHA-1 is on life support with sha1cd and SHA-2 faces length extension attacks (even with SHA-2-256 and SHA-2-512 but not SHA-2-512/256). Would be cool having benchmarks comparing this to other implementations if great performance is a goal, as you already mentioned in your README it's much faster than keccack-tiny. From memory, I remember getting ~10MiB/s when I first implemented keccak-tiny from C to D. When I rewrote the package to my liking, and I got ~130MiB/s. But these tests were in a VM on my i7-3770 so it's not really a conclusive thing. I could do a benchmark again.
sha3-d
Hello all! When I submitted my work to Phobos[1] earlier this year, it was rejected. (Understandably) So I made a DUB package and forgot to announce it here! Package: https://code.dlang.org/packages/sha3-d Source: https://github.com/dd86k/sha3-d [1] https://github.com/dlang/phobos/pull/7713