intrinsics

    0热度

    1回答

    我看到在GCC的ia32intrin.h如下: /* rdtscp */ extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __rdtscp (unsigned int *__A) { return __builtin_ia32

    1热度

    1回答

    我将使用Intel SSE2内在函数编写的例程移植到Microsoft 32位平台。它在GCC,Clang和64位Windows下工作正常。原代码有效地执行以下操作: typedef unsigned __int64 word64; // input is aligned on 16-byte boundary void (const byte* input) { const w

    1热度

    1回答

    我正在寻找一种无分支方式来根据AVX2值的特定条件选择AVX2常数。什么我现在做 伪代码: condition = _mm256_cmp_gt(value, limit); result = _mm256_or(_mm256_and(condition, constant_a), _mm256_andnot(condition, constant_b)); 有什么比这更有效

    1热度

    1回答

    在LLVM源代码文件llvm/lib/Target/NVPTX/NVPTXIntrinsics.td中,CUDA存储器类型上的atom_add,atom_sub,atom_max,atom_min,atom_inc,atom_dec等的定义可以是看到。但是我无法在这些文件中的任何位置找到CUDA内存上的加载和存储操作。那么在llvm中为CUDA内存类型定义加载和存储操作的位置?

    2热度

    1回答

    我研究了AVX或AVX2 ISA支持的字符串指令,但是我找不到像SSE4.2这样的任何256位字符串比较指令如果有任何字符串比较我找不到它们?否则为什么AVX/AVX2 ISA不支持256位字符串指令? 我还发现,AVX2不支持mullo为unsigned short作为16位无符号整数,我不知道原因。因为它已在SSE4.2中得到支持。

    2热度

    1回答

    当我试着使用AVX获取数据,我得到运行时错误 - 分段故障: int i = 0; const int sz = 9; size_t *src1 = (size_t *)_mm_malloc(sz*sizeof(size_t), 32); size_t *src2 = (size_t *)_mm_malloc(sz*sizeof(size_t), 32); size_t *dst = (s

    1热度

    2回答

    我有兴趣将__m256i数据类型(在英特尔内部函数中用于AVX指令)的数据复制到新的__m256i中。 我知道我可以将数据从AVX寄存器存储到内存,然后从内存中,我可以加载数据到一个新的寄存器。但是,有没有更简单的方法(即专用指令),我可以直接“克隆”寄存器,而无需先使用操作将其存储到内存中,然后再次加载它? 我想,我可以添加一个空的寄存器到我的寄存器,然后得到一个新的__m256i类型回来,可以

    -1热度

    2回答

    我有我的Linux的64位机器 GCC 4.9.2 GCC 5.3.0 GCC 6从一个svn快照构建] 上安装的 gcc 3个版本 所有3个编译器给我同样的错误,当我试图明确保留xmm寄存器 -ffixed-xmm0 -ffixed-xmm1 -ffixed-xmm2 -ffixed-xmm3 -ffixed-xmm4 -ffixed-xmm5 -ffixed-xmm6 -ffixed-xmm7

    0热度

    1回答

    我有兴趣在静态汇编程序库中封装XBEGIN()和XEND()函数中的事务xbegin和xend。但是我不清楚如果(或如果)堆栈恢复到原始的xbegin调用状态,给定一个xabort源自其他堆栈级别(更高或更低)。换句话说,动态堆栈上下文(包括中断效果)是否作为事务的另一部分进行管理和回滚? 对于没有支持或可用的_xbegin()和_xend()内部函数的VC++ 2010构建,x64构建不能使用_

    1热度

    1回答

    我一直在研究这个问题一段时间了,我希望有人能指出我的错误。我想我无法再通过树木看到森林了。 我有一个用于测试的LeMaker HiKey开发板。它AArch64,所以其具有NEON和其他CPU的功能,如AES,SHA和CRC32: $ cat /proc/cpuinfo Processor : AArch64 Processor rev 3 (aarch64) ... Features :