EventAnalysis  1.3.0
Static Public Member Functions | List of all members
levenshteinSSE::LevenshteinIterationSIMD< T > Struct Template Reference

#include <levenshtein-sse.hpp>

Inheritance diagram for levenshteinSSE::LevenshteinIterationSIMD< T >:
levenshteinSSE::LevenshteinIterationSIMDWrap< Alloc1, Alloc2, T >

Static Public Member Functions

static void performSIMD (const T *a, const T *b, std::size_t &i, std::size_t j, std::size_t bLen, std::uint32_t *diag, const std::uint32_t *diag2)
 

Detailed Description

template<typename T>
struct levenshteinSSE::LevenshteinIterationSIMD< T >

Start SIMD-Land

Currently, only SSSE3+ is supported, since we use _mm_shuffle_epi8 and _mm_alignr_epi8.

If you are not familiar with SSE and/or the intrinsics, you can just believe me that they do about the same thing as LevenshteinIterationBase::perform.

Member Function Documentation

◆ performSIMD()

template<typename T >
static void levenshteinSSE::LevenshteinIterationSIMD< T >::performSIMD ( const T *  a,
const T *  b,
std::size_t &  i,
std::size_t  j,
std::size_t  bLen,
std::uint32_t *  diag,
const std::uint32_t *  diag2 
)
inlinestatic

The documentation for this struct was generated from the following file: