grenad VS simdutf8

Compare grenad vs simdutf8 and see what are their differences.

grenad

Tools to sort, merge, write, and read immutable key-value pairs :tomato: (by meilisearch)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
grenad simdutf8
6 15
19 508
- 1.2%
5.3 3.9
6 days ago 2 months 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.

grenad

Posts with mentions or reviews of grenad. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-05-28.
  • kv-par-merge-sort: A library for sorting POD (key, value) data sets that don't fit in memory
    2 projects | /r/rust | 28 May 2022
    I tried new inserting algorithms on the sorter to reduce the amount of time spent sorting but didn’t find anything better than that, would you have any idea? I gave up trying better inserting algorithms by declaring that doing one final in-memory sort was more effective that doing a lot of comparison to try inserting keys in the right order…
  • What's everyone working on this week (42/2021)?
    9 projects | /r/rust | 18 Oct 2021
    I have finalized the latest release of grenad which introduce a lookup struct called a Cursor. Grenad is a library that provides tools to sort, merge, write, and read immutable key-value pairs.
  • What's everyone working on this week (32/2021)?
    7 projects | /r/rust | 9 Aug 2021
    I worked on my grenad library: a library used to sort, merge, write, and read key-value pairs, used in MeiliSearch for the new indexing system. I added a lot of documentation to the crate and done a lot of improvement by reducing the amount of copied memory when merging key-value pairs.
  • What's everyone working on this week (19/2021)?
    15 projects | /r/rust | 9 May 2021
    I was wondering if you could maybe point me to any blog post regarding the segment merging? I am using my grenad library, which is a simplification of my MTBL Rust port. This is a key-value store with some useful sorter helping functions, using a merge function, some compression parameters... Works great but could maybe be improved.

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
    2 projects | /r/rust | 5 Aug 2021
    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
    10 projects | /r/rust | 17 Jul 2021
    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)?
    15 projects | /r/rust | 9 May 2021
    I will work on simdutf8, either
  • simdutf v0.1.1 - A small step for semver, one giant leap for performance.
    6 projects | /r/rust | 26 Apr 2021
    Now I have to benchmark again, it might be negligable. See also the discussion for this pull request.
    6 projects | /r/rust | 26 Apr 2021
  • Show HN: High-speed UTF-8 validation in Rust
    9 projects | news.ycombinator.com | 21 Apr 2021
    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.

    9 projects | news.ycombinator.com | 21 Apr 2021
  • Incredibly fast UTF-8 validation
    8 projects | /r/rust | 21 Apr 2021
    ARM SIMD intrinsics are currently unstable and many are not yet implemented. But work to add them is ongoing and it should be possible. I will look into it. See issue #1
    8 projects | /r/rust | 21 Apr 2021
    Yes, it is now also listed in the References section. The only difference is that it does 32-byte-aligned reads which proves to be a bit faster even on modern architectures since it is the SIMD register width and reads do not cross cachelines. Also, the compat API flavor checks every 64-byte block if invalid data has been encountered and calculates the error position using std::str::from_utf8().
    8 projects | /r/rust | 21 Apr 2021

What are some alternatives?

When comparing grenad and simdutf8 you can also consider the following projects:

sqloxide - Python bindings for sqlparser-rs

simdutf - Unicode routines (UTF8, UTF16, UTF32) and Base64: billions of characters per second using SSE2, AVX2, NEON, AVX-512, RISC-V Vector Extension. Part of Node.js and Bun.

OpenVehicleDiag - A rust based cross-platform ECU diagnostics and car hacking application, utilizing the passthru protocol

cxx - Safe interop between Rust and C++

encoding_rs - A Gecko-oriented implementation of the Encoding Standard in Rust

chartered - ✈️ a private, authenticated, permissioned cargo registry

link-to-notion - Quick add a link to a page within Notion app

rescrobbled - MPRIS music scrobbler daemon

feel

bumpalo - A fast bump allocation arena for Rust

fast_float - Fast and exact implementation of the C++ from_chars functions for number types: 4x to 10x faster than strtod, part of GCC 12 and WebKit/Safari