sliceslice-rs VS nsimd

Compare sliceslice-rs vs nsimd and see what are their differences.

sliceslice-rs

A fast implementation of single-pattern substring search using SIMD acceleration. (by cloudflare)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
sliceslice-rs nsimd
2 2
86 310
- 0.0%
5.9 0.0
about 2 months ago over 2 years ago
Rust C
MIT License MIT License
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.

sliceslice-rs

Posts with mentions or reviews of sliceslice-rs. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-05-03.
  • Memchr 2.4 now has an implementation of substring search on arbitrary bytes
    7 projects | /r/rust | 3 May 2021
    Aside from that, their SIMD implementation is better optimized than the one I wrote. Aside from the codegen problem I talked about on that PR, sliceslice does better with its confirmation step by specializing calls to memcmp for all needles up to length 16. This repeats the entire implementation 16 times or so (for each of SSE2 and AVX2, so 32 in total I believe), but lets the memcmp call be a bit better than a generic one. We could do the same in memchr, but I wanted to see how much mileage we could get with fewer copies of the code and a lower latency implementation of memcmp.
    7 projects | /r/rust | 3 May 2021
    Note the discussion here though: https://github.com/cloudflare/sliceslice-rs/pull/26

nsimd

Posts with mentions or reviews of nsimd. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-03-22.
  • SPO600 project part 1
    8 projects | dev.to | 22 Mar 2022
    I've decided to switch to something better, and after a few hours of searching, I found this repository: NSIMD https://github.com/agenium-scale/nsimd FastDifferentialCoding https://github.com/lemire/FastDifferentialCoding VS https://github.com/VcDevel/Vc XSIMD https://github.com/xtensor-stack/xsimd
  • All C++20 core language features with examples
    10 projects | news.ycombinator.com | 7 Apr 2021
    > - Waiting for Cross-Platform standardized SIMD vector datatypes

    which language has standardized SIMD vector datatypes ? most languages don't even have any ability to express SIMD while in C++ I can just use Vc (https://github.com/VcDevel/Vc), nsimd (https://github.com/agenium-scale/nsimd) or one of the other ton of alternatives, and have stuff that JustWorksTM on more architectures than most languages even support

    - Using nonstandard extensions, libraries or home-baked solutions to run computations in parallel on many cores or on different processors than the CPU

    what are the other native languages with a standardized memory model for atomics ? and, what's the problem with using libraries ? it's not like you're going to use C# or Java's built-in threadpools if you are doing any serious work, no ? Do they even have something as easy to use as https://github.com/taskflow/taskflow ?

    - Debugging cross-platform code using couts, cerrs and printfs

    because people never use console.log in JS or System.println in C# maybe ?

    - Forced to use boost for even quite elementary operations on std::strings.

    can you point to non-trivial java projects that do not use Apache Commons ? Also, the boost string algorithms are header-only so you will end up with exactly the same binaries that if it was in some std::string_algorithms namespace:

    https://gcc.godbolt.org/z/43vKadbde

What are some alternatives?

When comparing sliceslice-rs and nsimd you can also consider the following projects:

simde - Implementations of SIMD instruction sets for systems which don't natively support them.

sleef - SIMD Library for Evaluating Elementary Functions, vectorized libm and DFT

Vc - SIMD Vector Classes for C++

std-simd - std::experimental::simd for GCC [ISO/IEC TS 19570:2018]

highway - Performance-portable, length-agnostic SIMD with runtime dispatch

highway - Highway - A Modern Javascript Transitions Manager

xsimd - C++ wrappers for SIMD intrinsics and parallelized, optimized mathematical functions (SSE, AVX, AVX512, NEON, SVE))

SimSIMD - Up to 200x Faster Inner Products and Vector Similarity — for Python, JavaScript, Rust, and C, supporting f64, f32, f16 real & complex, i8, and binary vectors using SIMD for both x86 AVX2 & AVX-512 and Arm NEON & SVE 📐

regex-automata - A low level regular expression library that uses deterministic finite automata.

Vcpkg - C++ Library Manager for Windows, Linux, and MacOS

tensorflow - An Open Source Machine Learning Framework for Everyone

conan-center-index - Recipes for the ConanCenter repository