WojciechMula / Sse4 Strstr
Licence: bsd-2-clause
SIMD (SWAR/SSE/SSE4/AVX2/AVX512F/ARM Neon) of Karp-Rabin algorithm's modification
Stars: ✭ 115
Projects that are alternatives of or similar to Sse4 Strstr
Libsimdpp
Portable header-only C++ low level SIMD library
Stars: ✭ 914 (+694.78%)
Mutual labels: sse, neon, avx2, avx512
Simde
Implementations of SIMD instruction sets for systems which don't natively support them.
Stars: ✭ 1,012 (+780%)
Mutual labels: sse, neon, avx2, avx512
Simd
C++ image processing and machine learning library with using of SIMD: SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX-512, VMX(Altivec) and VSX(Power7), NEON for ARM.
Stars: ✭ 1,263 (+998.26%)
Mutual labels: sse, neon, avx2, avx512
Unisimd Assembler
SIMD macro assembler unified for ARM, MIPS, PPC and x86
Stars: ✭ 63 (-45.22%)
Mutual labels: sse, neon, avx2, avx512
Quadray Engine
Realtime raytracer using SIMD on ARM, MIPS, PPC and x86
Stars: ✭ 13 (-88.7%)
Mutual labels: sse, neon, avx2, avx512
Base64simd
Base64 coding and decoding with SIMD instructions (SSE/AVX2/AVX512F/AVX512BW/AVX512VBMI/ARM Neon)
Stars: ✭ 115 (+0%)
Mutual labels: sse, neon, avx2, avx512
ternary-logic
Support for ternary logic in SSE, XOP, AVX2 and x86 programs
Stars: ✭ 21 (-81.74%)
Mutual labels: sse, avx2, avx512
Umesimd
UME::SIMD A library for explicit simd vectorization.
Stars: ✭ 66 (-42.61%)
Mutual labels: neon, avx2, avx512
Libxsmm
Library for specialized dense and sparse matrix operations, and deep learning primitives.
Stars: ✭ 518 (+350.43%)
Mutual labels: sse, avx2, avx512
Toys
Storage for my snippets, toy programs, etc.
Stars: ✭ 187 (+62.61%)
Mutual labels: sse, avx2, avx512
simd-byte-lookup
SIMDized check which bytes are in a set
Stars: ✭ 23 (-80%)
Mutual labels: sse, avx2, avx512
Std Simd
std::experimental::simd for GCC [ISO/IEC TS 19570:2018]
Stars: ✭ 275 (+139.13%)
Mutual labels: sse, neon, avx512
Directxmath
DirectXMath is an all inline SIMD C++ linear algebra library for use in games and graphics apps
Stars: ✭ 859 (+646.96%)
Mutual labels: sse, neon, avx2
Sse Popcount
SIMD (SSE) population count --- http://0x80.pl/articles/sse-popcount.html
Stars: ✭ 226 (+96.52%)
Mutual labels: sse, avx2, avx512
Nsimd
Agenium Scale vectorization library for CPUs and GPUs
Stars: ✭ 138 (+20%)
Mutual labels: neon, avx2, avx512
Libpopcnt
🚀 Fast C/C++ bit population count library
Stars: ✭ 219 (+90.43%)
Mutual labels: neon, avx2, avx512
Highway
Performance-portable, length-agnostic SIMD with runtime dispatch
Stars: ✭ 301 (+161.74%)
Mutual labels: neon, avx2, avx512
================================================================================ SIMD-friendly algorithms for substring searching
Sample programs for article "SIMD-friendly algorithms for substring searching" (http://0x80.pl/articles/simd-strfind.html).
The root directory contains C++11 procedures implemented using intrinsics for SSE, SSE4, AVX2, AVX512F, AVX512BW and ARM Neon (both ARMv7 and ARMv8).
The subdirectory original contains 32-bit programs with inline assembly, written in 2008 for another article__.
__ http://0x80.pl/articles/sse4_substring_locate.html
Usage
To run unit and validation tests type make test_ARCH
, to run
performance tests type make run_ARCH
. Value ARCH
selectes
the CPU architecture:
- sse4,
- avx2,
- avx512f,
- avx512bw,
- arm,
- aarch64.
Performance results
The subdirectory results
contains raw timings from various computers.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].