intrinsics 相关问题

在编译语言中使用内在函数来使用语言范围之外的特定CPU指令。

如何将32位浮点数转换为8位有符号字符?

我想要做的是:将输入浮点数乘以固定因子。将它们转换为8位有符号字符。请注意,大多数输入具有较小的绝对值范围,如[-6,6],...

回答 2 投票 3

Visual Studio 2017:_mm_load_ps经常编译为movups

我正在查看为我的代码生成的程序集(使用Visual Studio 2017),并注意到_mm_load_ps经常(总是?)编译为movups。我正在使用_mm_load_ps的数据被定义为......

回答 1 投票 5

在硬件向量指针和相应类型之间`reinterpret_cast`是一个未定义的行为吗?

做这样的事情是合法的吗? constexpr size_t _m256_float_step_sz = sizeof(__ m256)/ sizeof(float); alignas(__ m256)float stack_store [100 * _m256_float_step_sz] {}; __m256&hwvec1 = * ...

回答 2 投票 1

clflush通过C函数使缓存行无效

我试图使用clflush手动驱逐缓存行,以确定缓存和行大小。我没有找到任何关于如何使用该指令的指南。我所看到的,是一些使用更高的代码......

回答 2 投票 5

如何最大限度地减少开销加载到使用标量SIMD内在函数的simd寄存器中

在godbolt.org上使用gcc 7.2我可以看到下面的代码在汇编程序中得到了最佳的翻译。我看到1个加载,1个加法和1个商店。 #包括 __attribute __((alwaysinline))...

回答 1 投票 2

为什么SSE有128位负载功能?

我正在寻找其他人的代码,目前正试图找出为什么_mm_load_si128存在。基本上,我尝试替换_ra = _mm_load_si128(reinterpret_cast (&光盘-&...

回答 1 投票 13

英特尔C编译器使用带对齐内存的未对齐SIMD移动

我使用的是Haswell Core i7-4790K。当我使用icc -O3 -std = c99 -march = core-avx2 -g编译以下玩具示例时:#include #包括 #包括

回答 2 投票 3

'vector long long'的可用性是多少?

我正在测试一台旧的PowerMac G5,它是一台Power4机器。构建失败:$ make ... g ++ -DNDEBUG -g2 -O3 -mcpu = power4 -maltivec -c ppc-simd.cpp ppc-crypto.h:36:错误:使用'long long'...

回答 1 投票 2

使用_mm_load_pd时函数崩溃

我有以下功能:模板 void SSE_vectormult(T * A,T * B,int size){__ m128d a; __m128d b; __m128d c;双A2 [2],B2 [2],C [2]; const double * ...

回答 3 投票 1

通过Visual C ++编译器识别ARM软件中断(SWI)函数

因为我更喜欢Visual Studio编辑器而不是Keil和IAR编辑器,所以我尝试使用VS 2017编译基于ARM的项目。一个项目包括RealView运行时库的RTL.h头,它声明了......

回答 1 投票 3

使用Intel Intrinsics进行无符号短整数运算

我想使用Intel内在函数(16位无符号整数向量)进行一些操作,操作如下:从unsigned short int数组加载或设置。 Div和Mod ......

回答 1 投票 1

使用未使用的v0的“vperm v0,v0,v0,v17”是做什么的?

我正在使用Power8内置函数开发SHA-256实现。性能有点偏差。我估计它每个字节大约2个周期(cpb)。在块上执行SHA的C / C ++代码看起来......

回答 1 投票 5

SSE - 不存在的hardsub内在?

虽然可以通过内在函数爬行,但我注意到无处可见水平的addub / subadd intruction。它可以在过时的3DNow中使用!扩展然而它的用途......

回答 2 投票 2

使用内在函数递增数组的特定元素

我正在使用c ++。我有2个短元素数组。首先是值,第二个是第一个数组的索引,应该是递增的。我有这样的代码:const int N1 = ...; const int N2 = ...; int ...

回答 1 投票 0

Renderscript Intrinsics文档

我使用Renderscript ScriptIntrinsicBlur,它工作得很好,并为我的应用程序节省了大量的计算时间。但是,我正在寻找一种用户指南和这些非常有用的文档......

回答 1 投票 1

通过指针,强制转换和解除引用加载向量?

OpenPower手册|向量数据类型声明避免手动加载元素,并使用向量转换:在应用程序定义的地址访问向量的首选方法是使用...

回答 1 投票 2

使用NEON内在函数除以浮点数

我当时正在处理一个四像素的图像,这是一个Android应用程序的armv7。我想将float32x4_t向量除以另一个向量,但其中的数字从大约0变化....

回答 1 投票 15

VS:_BitScanReverse64内在的意外优化行为

以下代码在调试模式下工作正常,因为如果没有设置Bit,_BitScanReverse64被定义为返回0。引用MSDN :(返回值为)“如果设置了索引则为非零,如果没有设置位则为0”

回答 1 投票 4

© www.soinside.com 2019 - 2024. All rights reserved.