sse 相关问题

SSE(Streaming SIMD Extensions)是许多类似命名的x86指令集向量扩展中的第一个。此时,SSE通常更常用于x86向量指令,而不是没有SSE2,SSE3等的SSE引用。

自动向量化排指令

我试图让编译器生成通过自动矢量化(V)pshufd指令(或同等学历)。这是令人惊讶的困难。例如,假设的4个UINT32值的向量,所述...

回答 1 投票 2

为什么我的SSE代码比本地C ++代码慢?

首先,我是新来的SSE。我决定加快我的代码,但现在看来,它的工作原理比较慢,然后我的本地代码。这是一个例子,计算平方和。在我的英特尔i7-6700HQ,...

回答 2 投票 0

ostream的崩溃使用上排列堆内存?

这里是一个虚拟的代码我有,就用“庞大”的值堆测试对准内存分配的:#include #包括 #包括 常量双ln2per12 =的std :: ...

回答 1 投票 -2

快速计数两个阵列之间相等的字节数[重复]

我写的函数int compare_16bytes(__ m128i LHS,__m128i右),以比较使用SSE指令两个16字节的数字:该函数返回多少字节执行后,等于...

回答 4 投票 11

如何混合32位整数?或者:为什么没有_mm256混合_epi32?

我正在使用AVX2 x86 256位SIMD扩展。我想做一个32位整数组件if-then-else指令。在英特尔文档中,这样的指令称为vblend。英特尔......

回答 1 投票 2

loadu和load之间有什么区别?

什么更有效,为什么?特别是_mm_loadu_si128与C中的_mm_load_si128相比。(编者注:或者这是标记的程序集,可能他们的意思是手写的asm中的movdqu与movdqa。哪个......

回答 1 投票 0

为什么Windows x64调用约定不使用XMM寄存器传递超过4个整数args?

(Microsoft)x64调用约定规定:参数在寄存器RCX,RDX,R8和R9中传递。如果参数是float / double,则它们在XMM0L,XMM1L,XMM2L和XMM3L中传递。 ...

回答 2 投票 4

SSE跨平台指令集

我想在VS2017中用SSE指令编写数学函数。我可以尝试一下:__ m128 addWithIntrinsics(__ m128 a,__ m128 b){__ m128 r = _mm_add_ps(a,b);返回r; } __m128 ......

回答 1 投票 1

使用SSE / AVX / AVX2检查__m128i的所有字节是否匹配单个字节

我正在寻找计算以下函数的有效方法:输入:__ m128i数据,uint8_t in;输出:布尔值,指示数据中是否有任何字节。我实际上是用它们来实现...

回答 1 投票 0

将3D数学转换为SSE或其他SIMD需要多少加速?

我在我的应用程序中广泛使用3D数学。通过将矢量/矩阵库转换为SSE,AltiVec或类似的SIMD代码,我可以实现多少加速?

回答 7 投票 10

SIMD:累积相邻对

我正在学习如何使用SIMD内在函数和自动向量化。幸运的是,我有一个有用的项目,我正在努力,似乎非常适合SIMD,但对于像我这样的新手来说仍然很棘手。我......

回答 1 投票 3

英特尔向量指令将以32位int打包的8个4位值零扩展到__m256i?

正如问题所说,我有一个普通的int,它是8个打包值,每个4位,我想将其零扩展到256位向量寄存器。这可能与sse / avx / avx2有关吗?

回答 2 投票 3

SSE内在函数参考[关闭]

有没有人知道列出gcc的SSE内在函数的操作的引用,即头文件中的函数?谢谢。

回答 5 投票 51

如何利用C中的SSE内禀函数计算矢量点积

我试图将两个向量相乘,其中一个向量的每个元素乘以另一个向量的相同索引中的元素。然后我想总结所得到的所有元素......

回答 4 投票 10

AVX2什么是基于面具打包左边最有效的方法?

如果你有一个输入数组和一个输出数组,但是你只想写那些通过某个条件的元素,那么在AVX2中这样做最有效的方法是什么?我在SSE见过......

回答 4 投票 23

.NET Core中gamedev的浮点确定性

背景我们正在使用C#和.NET Core开发RTS游戏引擎。与大多数其他实时多人游戏不同,RTS游戏倾向于通过将玩家输入与其他玩家同步来工作,并且......

回答 2 投票 1

C ++:如何使用AVX进行初始化来防止默认构造函数

请考虑以下内容:// foo.h class Foo {public:int x = 2; int y = 3; void DoSomething_SSE(); void DoSomething_AVX(); //(生成隐式默认构造函数...

回答 3 投票 3

如果没有Skylake上的VZEROUPPER,为什么这个SSE代码会慢6倍?

我一直试图找出应用程序中的性能问题,并最终将其缩小到一个非常奇怪的问题。以下代码在Skylake CPU上运行速度慢了6倍(i5 -...

回答 2 投票 29

我的矢量化xorshift +不是很随机

我有以下代码(维基百科的xorshift128 +代码修改为使用矢量类型):#include #包括 __v8si rand_si(){static auto s0 = __v4du {4,...

回答 3 投票 2

获取__m256变量中非零的第一个元素的索引

__m256 dst = _mm256_cmp_ps(value1,value2,_CMP_LE_OQ);如果dst是[0,0,0,-nan,0,0,0,-nan];我希望能够知道第一个-nan索引,在这种情况下为3而不进行8次迭代的for循环。 ...

回答 1 投票 14

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