sse

sse

文章 8 浏览 95

为什么 _mm_stream_ps 会产生 L1/LL 缓存未命中?

我正在尝试优化计算密集型算法,但遇到了一些缓存问题。我有一个巨大的缓冲区,它偶尔会随机写入,并且在应用程序结束时只读取一次。显然,写入缓冲区…

腻橙味 2024-12-31 23:04:17 4 0

同时使用 SSE2 内在函数和 gcc 内联汇编器

我尝试在 gcc 中混合 SSE2 内在函数和内联汇编器。但是,如果我将变量指定为 xmm0/register 作为输入,那么在某些情况下我会收到编译器错误。示例: #…

誰認得朕 2024-12-31 21:39:23 2 0

SSE 内在函数导致正常浮点运算返回 -1.#INV

我在编写执行音频处理的 SSE 方法时遇到问题。我在这里基于英特尔的论文实现了 SSE 随机函数: http://software.intel.com/en-us/articles/fast-rando…

过潦 2024-12-29 18:17:17 5 0

如何使用 SSE/x86 高效地进行分散求和

我的任务是编写一个程序,以可能的绝对最大速度将向量总和流式传输到分散的内存位置。输入数据是目标 ID 和 XYZ 浮点向量,因此类似于: [198, {0.4,0…

凉宸 2024-12-29 10:29:01 6 0

将单个 malloc 切块/雕刻/打包成具有不同类型/对齐方式的多个数组的规范方法?

背景:我有一个 C99 例程,需要临时存储具有不同对齐要求的不同数据类型。目前,我多次调用 posix_memalign ,这 a) 引入了大量开销,b) 不能保证我的…

歌入人心 2024-12-27 02:15:54 3 0

Intel x86 ISA 上的 _mm_load_ps 与 _mm_load_pd 与等

下面两行有什么区别? __m128 x = _mm_load_ps((float *) ptr); __m128 y = _mm_load_pd((double *)ptr); 换句话说,为什么有这么多不同的_mm_load_xy…

清醇 2024-12-26 20:08:18 4 0

为什么编译器会生成入栈/出栈指令对?

我用VC++ 2010编译器编译了下面的代码: __declspec(dllexport) unsigned int __cdecl __mm_getcsr(void) { return _mm_getcsr(); } 生成的代码是: p…

烛影斜 2024-12-26 19:12:47 3 0

SSE比FPU慢?

我有一大段代码,其主体部分包含这段代码: result = (nx * m_Lx + ny * m_Ly + m_Lz) / sqrt(nx * nx + ny * ny + 1); 我已将其矢量化如下(一切都已…

冰之心 2024-12-26 11:56:12 6 0

x86汇编中如何除浮点数?

当我尝试编写 Heron 算法来从 ECX 寄存器计算 sqrt 时,它不起作用。看起来问题是除浮点数,因为结果是整数。 我的算法: sqrtecx: MOV EDX, 10 ; lo…

白昼 2024-12-25 23:24:00 7 0

如何在 XMM 寄存器之间移动 128 位值?

汇编中看似微不足道的问题:我想将整个 XMM0 寄存器复制到 XMM3。我已经尝试过 movdq xmm3, xmm0 ,但 MOVDQ 不能用于在两个 XMM 寄存器之间移动值。…

欲拥i 2024-12-23 04:10:43 4 0

有序/无序比较是什么意思?

查看上交所运营商 CMPORDPS - ordered compare packed singles CMPUNORDPS - unordered compare packed singles 有序和无序是什么意思?我在x86指令集…

嘴硬脾气大 2024-12-22 22:09:50 3 0

添加 SSE 寄存器的组件

我想添加 SSE 寄存器的四个组件以获得单个浮点数。我现在是这样做的: float a[4]; _mm_storeu_ps(a, foo128); float x = a[0] + a[1] + a[2] + a[3];…

殤城〤 2024-12-21 08:52:56 4 0

使用 Intel AVX 存储打包双精度向量中的各个双精度值

我正在使用 Intel AVX 指令的 C 内在函数编写代码。如果我有一个打包的双向量(a __m256d),将它们存储到内存中不同位置的最有效方法(即最少的操作…

漫雪独思 2024-12-20 11:08:18 6 0

向量的数据如何对齐?

如果我想使用 SSE 处理 std::vector 中的数据,我需要 16 字节对齐。我怎样才能做到这一点?我需要编写自己的分配器吗?或者默认分配器是否已与 16 字…

ゃ懵逼小萝莉 2024-12-20 10:23:17 7 0

嵌套 for 循环内的 SSE 指令

我的代码中有几个嵌套的 for 循环,我尝试在英特尔 i7 核心上使用英特尔 SSE 指令来加速应用程序。 代码结构如下(val在更高的for循环中设置): _m12…

贱贱哒 2024-12-19 08:21:12 1 0
更多

推荐作者

李珊平

文章 0 评论 0

Quxin

文章 0 评论 0

范无咎

文章 0 评论 0

github_ZOJ2N8YxBm

文章 0 评论 0

若言

文章 0 评论 0

南…巷孤猫

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文