PackageTrack
Sign in Get early access

simdutf8

SIMD-accelerated UTF-8 validation.

0.1.5 191M downloads/mo #522 most downloaded on crates.io rusticstuff/simdutf8

What this package is like to depend on

Last release 2 years ago

no release in 18 months

Release timing varies

gaps range from 3 weeks to 2.5 years

Nearly every release is documented

notes for 9 of 9 stable releases

Nothing withdrawn

no release was ever pulled

5 years old

9 releases · first in 2021

0 releases in the last 12 months

see the full history below

Release timeline

9 releases · Apr 2021 to Sep 2024
2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 9
  1. 0.1.5 22 Sep 2024
    Release notes

    Bug fixes

    Performance

    • WASM: Don't use u8x16_bitmask for ASCII Check (#79) (thanks @CryZe)
    Open source →
    Release notes

    Bug fixes

    • Fix Undefined Behavior in WebAssembly SIMD128 (#86) (thanks @CryZe)
    • Documentation and clippy fixes (thanks @rtfeldman, @jqnatividad, @rhysd)

    Performance

    • WASM: Don't use u8x16_bitmask for ASCII Check (#79) (thanks @CryZe)
    Open source →
  2. 0.1.4 02 Apr 2022
    Release notes

    New features

    • WASM (wasm32) support thanks to @almann!

    Improvements

    • Make aarch64 SIMD implementation work on Rust 1.59/1.60 with create feature aarch64_neon
    • For Rust Nightly the aarch64 SIMD implementation is enabled out of the box.
    • Starting with Rust 1.61 the aarch64 SIMD implementation is expected to be enabled out of the box as well.

    Performance

    • Prefetch was disabled for aarch64 since the requisite intrinsics have not been stabilized.
    Open source →
    Release notes

    New features

    • WASM (wasm32) support

    Improvements

    • Make aarch64 SIMD implementation work on Rust 1.59/1.60 with create feature aarch64_neon
    • For Rust Nightly the aarch64 SIMD implementation is enabled out of the box.
    • Starting with Rust 1.61 the aarch64 SIMD implementation is expected to be enabled out of the box as well.

    Performance

    • Prefetch was disabled for aarch64 since the requisite intrinsics have not been stabilized.
    Open source →
  3. 0.1.3 14 May 2021
    Release notes

    New features

    • Low-level streaming validation API in simdutf8::basic::imp
    Open source →
    Release notes

    New features

    • Low-level streaming validation API in simdutf8::basic::imp
    Open source →
  4. 0.1.2 09 May 2021
    Release notes

    New features

    • Aarch64 support (e.g. Apple Silicon, Raspberry Pi 4, ...) with nightly Rust and crate feature aarch64_neon

    Performance

    • Another speedup on pure ASCII data
    • Aligned reads have been removed as the performance was worse overall.
    • Prefetch is used selectively on AVX 2, where it provides a slight benefit on some Intel CPUs.

    Comparison vs v0.1.1 on x86-64

    Other

    • Refactored SIMD integration to allow easy implementation for new architectures
    • Full test coverage
    • Thoroughly fuzz-tested
    Open source →
    Release notes

    New features

    • Aarch64 support (e.g. Apple Silicon, Raspberry Pi 4, ...) with nightly Rust and crate feature aarch64_neon

    Performance

    • Another speedup on pure ASCII data
    • Aligned reads have been removed as the performance was worse overall.
    • Prefetch is used selectively on AVX 2, where it provides a slight benefit on some Intel CPUs.

    Comparison vs v0.1.1 on x86-64

    Other

    • Refactored SIMD integration to allow easy implementation for new architectures
    • Full test coverage
    • Thoroughly fuzz-tested
    Open source →
  5. 0.1.1 26 Apr 2021
    Release notes

    Performance

    • Large speedup on small inputs from delegation to std lib
    • Up to 50% better peak throughput on ASCII
    • #[inline] main entry points for a small general speedup.

    Benchmark against v0.1.0

    Other

    • Make both Utf8Error variants implement std::error::Error
    • Make basic::Utf8Error implement core::fmt::Display
    • Document Minimum Supported Rust Version (1.38.0).
    • Reduce package size.
    • Documentation updates.
    Open source →
    Release notes

    Performance

    • Large speedup on small inputs from delegation to std lib
    • Up to 50% better peak throughput on ASCII
    • #[inline] main entry points for a small general speedup.

    Benchmark against v0.1.0

    Other

    • Make both Utf8Error variants implement std::error::Error
    • Make basic::Utf8Error implement core::fmt::Display
    • Document Minimum Supported Rust Version (1.38.0).
    • Reduce package size.
    • Documentation updates
    Open source →
  6. 0.1.0 21 Apr 2021
    Release notes

    Documentation updates only.

    0.1.x releases will have API compatibility.

    Open source →
    Release notes
    • Documentation updates only.

    0.1.x releases will have API compatibility.

    Open source →
  7. 0.0.3 21 Apr 2021
    Release notes

    Documentation update only.

    Open source →
    Release notes
    • Documentation update only.
    Open source →
  8. 0.0.2 20 Apr 2021
    Release notes

    Documentation update only.

    Open source →
    Release notes
    • Documentation update only.
    Open source →
  9. 0.0.1 20 Apr 2021
    Release notes
    • Initial release.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive