sse

    11热度

    1回答

    我在旁边的其他人的代码中,并试图找出为什么_mm_load_si128存在。 从本质上讲,我试图与 _ra = *reinterpret_cast<__m128i*>(&cd->data[idx]); 更换 _ra = _mm_load_si128(reinterpret_cast<__m128i*>(&cd->data[idx])); 和它的工作原理,准确地执行相同的。 我计算过,对于较

    1热度

    1回答

    我想写一个网点位select功能打包SSE2双打: #include <iostream> #include <emmintrin.h> inline __m128d select(bool expression, const __m128d& x, const __m128d& y) { const int conditional_mask = expression ? -1

    -3热度

    1回答

    无符号字符转换为无符号短,我只是一个SSE的初学者,问题是如何使用SSE

    5热度

    1回答

    如果未定义__SHA__,我们使用内联汇编来使SHA指令可用。在GCC我们使用: GCC_INLINE __m128i GCC_INLINE_ATTRIB MM_SHA256RNDS2_EPU32(__m128i a, const __m128i b, const __m128i c) { asm ("sha256rnds2 %2, %1, %0" : "+x"(a) : "xm"(

    0热度

    1回答

    这是事情,我如何添加两个无符号字符数组并通过使用SSE将结果存储在无符号短数组中。任何人都可以给我一些帮助或提示。这是我迄今为止所做的。我只是不知道哪里出错is..need一些帮助 #include<iostream> #include<intrin.h> #include<windows.h> #include<emmintrin.h> #include<iterator> usin

    2热度

    1回答

    我试图编译一个使用gcc编译icpc和mkl数学库的大代码。 这是需要AVX的代码。 #include <immintrin.h> #include <stdint.h> #include <math.h> . . _mm256_set_m128d( _mm256_extractf128_pd(t2, 0) + _mm256_extractf128_pd(t2, 1),

    8热度

    1回答

    除了测试单个寄存器是否全零之外,您还可以使用SSE4.1 ptest做什么? 您可以使用SF和CF的组合来测试关于两个未知输入寄存器的任何有用信息吗? 什么是PTEST的好处?你可能会认为这将是很好的检查结果为填充比较(如PCMPEQD或CMPPS),但至少在英特尔CPU,it costs more uops to compare-and-branch using PTEST + JCC than

    7热度

    1回答

    TEST.CPP: #include <iostream> using namespace std; int main() { double pi = 3.14; cout << "pi:"<< pi << endl; } 当与g++ -mno-sse test.cpp编译上的cygwin 64位,输出为: PI:0 但是,如果使用g++ test.cpp编译,它

    1热度

    1回答

    我是AVX内部函数(和一般AVX)的新手,我试图加快一些代码,使用由32位无符号字符组成的256位查找表。目前,该代码(虚拟数据)被写成这样: unsigned char lookup_table[32] = { 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 }; uns

    -2热度

    2回答

    我想使用SIMD在AMD64架构上操作包含双类型值的向量。下面是我的问题的简单例子。这工作正常,如果我打印浮动值,但不是双。我需要精确到9位十进制数字。 #include<stdio.h> #include<emmintrin.h> typedef union f4vector { __m128d v; }float4; int main() { float4 x,y,