Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. C/C++
  3. SIMD Everywhere

SIMD Everywhere

MITCv0.8.2

A header-only library providing portable implementations of SIMD intrinsics for hardware without native support.

Visit WebsiteGitHubGitHub
3.1k stars321 forks0 contributors

What is SIMD Everywhere?

SIMDe is a header-only library that provides portable implementations of SIMD (Single Instruction, Multiple Data) intrinsics for systems lacking native support. It solves the problem of writing architecture-specific SIMD code by allowing developers to use intrinsics like SSE or AVX on non-x86 hardware such as ARM, enabling cross-platform performance optimization without rewriting.

Target Audience

Developers and engineers working on performance-critical applications who need to write SIMD-accelerated code that runs across multiple CPU architectures, such as x86, ARM, and WebAssembly.

Value Proposition

SIMDe uniquely offers full-featured emulation of SIMD instruction sets with zero overhead when native support exists, unlike abstraction layers that limit functionality. It supports gradual porting and extensive compiler optimization hooks, making it the most flexible solution for cross-platform SIMD development.

Overview

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

Use Cases

Best For

  • Porting SSE/AVX code to ARM or other non-x86 architectures
  • Developing SIMD-accelerated applications that must run on multiple CPU types
  • Testing NEON intrinsics on x86 development machines without ARM hardware
  • Writing performance-sensitive cross-platform libraries with SIMD fallbacks
  • Gradually optimizing legacy SIMD code for new architectures
  • Educational exploration of SIMD intrinsics across different instruction sets

Not Ideal For

  • Projects targeting a single, well-supported architecture where native intrinsics are sufficient
  • Real-time systems requiring deterministic performance and direct hardware access
  • Codebases heavily reliant on unsupported or partially supported SIMD extensions like specific AVX-512 variants

Pros & Cons

Pros

Cross-Architecture Portability

Enables running SIMD code like SSE on ARM without rewriting, as the README states it allows 'calling SSE functions on ARM' for effortless porting.

Zero Overhead When Native

When hardware supports intrinsics natively, SIMDe uses them directly with no performance penalty, ensuring optimal speed as emphasized in the project description.

Gradual Optimization Path

Supports mixing portable and native intrinsics in the same codebase, allowing incremental optimization and easier migration for legacy code.

Extensive Instruction Set Support

Provides complete implementations for major sets like SSE, AVX, and NEON, minimizing the need for manual fallbacks and covering a wide range of extensions.

Cons

Incomplete Emulation for Certain Functions

Some intrinsics, such as simde_mm256_test* and simde_mm256_zeroall, have no portable implementation and rely on native support or missing headers like <math.h>, limiting functionality in emulated mode.

Platform-Specific Bugs with Native Aliases

Enabling SIMDE_ENABLE_NATIVE_ALIASES can cause incorrect results on Windows x86 for MMX and SSE functions, as noted in the Caveats section, introducing portability risks.

Dependency on Compiler Optimizations

Requires aggressive optimization flags (-O3) and specific compiler support for features like OpenMP SIMD to achieve best performance, which may not be available in all environments.

Frequently Asked Questions

Quick Stats

Stars3,103
Forks321
Contributors0
Open Issues130
Last commit23 hours ago
CreatedSince 2017

Tags

#sse2#simd#arm#avx#sse#portability#vectorization#cross-platform#neon#arm-neon#header-only#performance

Built With

O
OpenMP
C
C++

Links & Resources

Website

Included in

C/C++70.6k
Auto-fetched 8 hours ago

Related Projects

stbstb

stb single-file public domain libraries for C/C++

Stars34,612
Forks8,088
Last commit1 month ago
{fmt}{fmt}

A modern formatting library

Stars25,655
Forks3,045
Last commit13 hours ago
xxHashxxHash

Extremely fast non-cryptographic hash algorithm

Stars11,242
Forks914
Last commit1 month ago
single_file_libssingle_file_libs

List of single-file C/C++ libraries, with emphasis on clause-less licenses.

Stars9,997
Forks650
Last commit20 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub