dl
dl_array_simd.h 文件参考

向量化容器 更多...

#include "base/dl_array.h"
#include "base/dl_type_op.h"
#include <simde/x86/sse.h>

浏览该文件的源代码.

class  dl::ArrayS2< T, N >
 

命名空间

namespace  dl
 

函数

template<size_t N>
ArrayS2< float, Ndl::simd_m128u_op (simde__m128(*op)(simde__m128, simde__m128), const ArrayS2< float, N > &a, const Array< float, 2 > &b)
 
template<typename T, std::size_t N>
constexpr ArrayS2< T, N > & dl::operator+= (ArrayS2< T, N > &a, const Array< T, 2 > &b)
 
template<typename T, std::size_t N>
constexpr ArrayS2< T, Ndl::operator+ (const ArrayS2< T, N > &a, const Array< T, 2 > &b)
 
template<typename T, std::size_t N>
constexpr ArrayS2< T, N > & dl::operator-= (ArrayS2< T, N > &a, const Array< T, 2 > &b)
 
template<typename T, std::size_t N>
constexpr ArrayS2< T, Ndl::operator- (const ArrayS2< T, N > &a, const Array< T, 2 > &b)
 
template<typename T, std::size_t N>
constexpr ArrayS2< T, N > & dl::operator*= (ArrayS2< T, N > &a, const Array< T, 2 > &b)
 
template<typename T, std::size_t N>
constexpr ArrayS2< T, Ndl::operator* (const ArrayS2< T, N > &a, const Array< T, 2 > &b)
 
template<typename T, std::size_t N>
constexpr ArrayS2< T, N > & dl::operator/= (ArrayS2< T, N > &a, const Array< T, 2 > &b)
 
template<typename T, std::size_t N>
constexpr ArrayS2< T, Ndl::operator/ (const ArrayS2< T, N > &a, const Array< T, 2 > &b)
 
template<size_t M = 1, typename T, size_t N>
constexpr ArrayS2< T, N - Mdl::toShorter (const ArrayS2< T, N > &a)
 

详细描述

向量化容器

版本
1.0
作者
lveyou
日期
26-02-05
注解
基于simde库
经测试,N较小时没有性能没有明显提升,且增加代码复杂度,还要求内存对齐(所以有特定需求才使用)

在文件 dl_array_simd.h 中定义.