simd-adler32
A SIMD-accelerated Adler-32 hash algorithm implementation. (by mcountryman)
simdutf8
SIMD-accelerated UTF-8 validation for Rust. (by rusticstuff)
simd-adler32 | simdutf8 | |
---|---|---|
3 | 15 | |
31 | 509 | |
- | 0.8% | |
4.4 | 1.2 | |
about 1 month ago | 12 days ago | |
Rust | Rust | |
MIT License | GNU General Public License v3.0 or later |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
simd-adler32
Posts with mentions or reviews of simd-adler32.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-04-09.
-
simd-adler32: Computing Adler-32 checksums at ~40GiB/s using AVX2
That only works with compilation time options. simd-adler32 uses runtime CPU feature detection. Switching to compilation time means that you can't produce portable binaries and all downstream folks compiling would need to specifically enable CPU target features to make it work. Which means any binaries distributed via Linux distros that compile with the lowest common denominator ISA won't benefit from these optimizations.
- Anyone want to speed up a PNG decoder?
simdutf8
Posts with mentions or reviews of simdutf8.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-08-05.
-
simdutf: Unicode validation and transcoding at billions of characters per second
That's not enough to make it interesting. There's already a porting of it in rust (https://github.com/rusticstuff/simdutf8), and inclusion in the stdlib has already been discussed: the problem is that you can't use simd in all supported targets and conditional compilation/detection is also very tricky.
-
Making Rust Float Parsing Fast: libcore Edition
No, libcore uses simple branching code at the moment, see https://github.com/rust-lang/rust/issues/68455. The issue is still actively being worked on. Note, it's not a simple drop in, and there seem to be even faster algorithms. For now there is https://github.com/rusticstuff/simdutf8.
-
What's everyone working on this week (19/2021)?
I will work on simdutf8, either
- simdutf8 v0.1.2 - Apple Silicon can get very fast UTF-8 validation too
-
simdutf v0.1.1 - A small step for semver, one giant leap for performance.
Now I have to benchmark again, it might be negligable. See also the discussion for this pull request.
-
Show HN: High-speed UTF-8 validation in Rust
Check the benchmarks section (https://github.com/rusticstuff/simdutf8#Benchmarks), second table. simdutf8 is up to 28 % faster on my Comet Lake CPU. However with pure ASCII clang does something magical with simdjson and it beats my implementation by a lot. GCC-compiled simdjson is slower all around except for a few outliers with short byte sequences.
The algorithm is the one from simdjson, the main difference is that it uses an extra step in the beginning to align reads to the SIMD block size.
- High-speed UTF-8 validation in Rust