Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
无法使用 nasm 编译具有 xmmword 操作数大小的汇编代码
我试图使用编译汇编代码nasm nasm o file input asm 并在以下代码片段的第 2 行抛出错误 mov rsi 0x400200 movdqu xmm0 xmmword rsi nop 我不确定是否可以使用 128 位寄存
Assembly
nasm
SSE
128bit
AVX/SSE 轮向下浮动并返回整数向量?
有没有办法使用 AVX SSE 获取浮点数向量 向下舍入并生成整数向量 所有底层内在方法似乎都会产生一个最终的浮点向量 这很奇怪 因为四舍五入会产生一个整数 SSE 可以根据您选择的截断 向零 或当前舍入模式 通常是 IEEE 默认模式 最
c
intel
SSE
intrinsics
avx
SSE 内在函数和循环展开
我正在尝试优化一些循环并且已经成功 但我想知道我是否只部分正确地完成了它 举例来说 我有这个循环 for i 0 i
c
Optimization
SSE
loopunrolling
程序何时会受益于预取和非临时加载/存储?
我用这个做了测试 for i32 i 0 i lt 0x800000 i Hopefully this can disable hardware prefetch i32 k i 997 0x7FFFFF 0x40 mm prefetch
c
SSE
Prefetch
Temporal
`uint64_t` 有什么困难? (从“float”转换组装)
我现在的情况是需要计算类似的东西size t s size t floorf f 也就是说 参数是浮点数 但它有一个整数值 假设floorf f 足够小 可以准确表示 在优化这个的过程中 我发现了一些有趣的事情 以下是一些转换自float到
Assembly
floatingpoint
x8664
SSE
floatingpointconversion
在 x64 上获取不带 __asm 的 SSE 版本
我正在尝试构建 VS2010 CRT 库的某些函数的稍微修改的版本 除了尝试访问可能保存指令集架构版本 ISA 的全局变量的部分外 一切都很好 if isa available gt ISA AVAILABLE SSE2 else if i
c
Assembly
visualc
SSE
cpuid
在 C++ 中使用 SSE 将两个 32 位整数向量相乘的最快方法
我有两个无符号向量 大小均为 4 vector
c
x86
SSE
SIMD
intrinsics
使用 sse 内在函数对 (A)RGB32 图像进行最快 50% 缩放
我想在 C 中尽可能快地缩小图像 本文 http blog qt io blog 2009 01 20 50 scaling of argb32 image 描述如何有效地将 32 位 RGB 图像平均降低 50 它速度快而且看起来不错 我
c
SSE
需要对我的 SSE/Assembly 尝试提出一些建设性的批评
我正在努力将一些代码转换为 SSE 虽然我有正确的输出 但它比标准 C 代码慢 我需要执行此操作的代码是 float ox p2x px c py s m float oy p2y px s py c m 我得到的 SSE 代码是 void
Assembly
x86
SSE
如何使用 SSE 将 _m128i 转换为无符号整数?
我制作了一个用于图像分离的功能 define ARGB COLOR a r g b a lt lt 24 r lt lt 16 g lt lt 8 b inline UINT PosterizeColor const UINT color
c
imageprocessing
SSE
SIMD
xorshift128+ 的 AVX/SSE 版本
我正在努力制作尽可能最快的高质量 RNG 读过http xorshift di unimi it http xorshift di unimi it xorshift128 似乎是一个不错的选择 C代码是 include
c
performance
SSE
avx
使用 SSE 获取 __m128i 向量中的最大值?
我刚刚开始使用 SSE 我很困惑如何获取最大整数值 max of a m128i 例如 m128i t mm setr ps 0 1 2 3 max t 3 四处搜寻让我发现MAXPS说明 但我似乎找不到如何使用它 xmmintrin h
c
Assembly
x86
SSE
从 __m128i 中查找最小/最大值
我想使用 SIMD 运算查找字节数组中的最小值 最大值 到目前为止 我能够遍历数组并将最小值 最大值存储到 m128i 变量中 但这意味着我正在查找的值混合在其他值中 确切地说是其他 15 个值 我找到了这些讨论here https sta
c
x86
SSE
SIMD
为什么在使用 pshufb shuffle 作为半字节查找表之前需要屏蔽?
这段代码来自https github com WojciechMula sse popcount blob master popcnt avx2 lookup cpp https github com WojciechMula sse po
c
SIMD
SSE
avx
avx2
SSE2 8x8 字节矩阵转置代码在 Haswell+ 上的速度是 ivy Bridge 上的两倍
我使用大量 punpckl pextrd 和pinsrd 编写了代码 它们旋转 8x8 字节矩阵 作为使用循环平铺旋转黑白图像的较大例程的一部分 我用 IACA 对其进行了分析 看看是否值得执行 AVX2 例程 令人惊讶的是 代码在 Has
performance
Assembly
x86
SSE
SIMD
如何判断内存是否对齐?
我是使用 SSE SSE2 指令优化代码的新手 到目前为止我还没有走得太远 据我所知 常见的 SSE 优化函数如下所示 void sse func const float const ptr int len if ptr is aligne
c
Optimization
memory
SSE
SIMD
使用 Intel AVX 存储打包双精度向量中的各个双精度值
我正在使用 Intel AVX 指令的 C 内在函数编写代码 如果我有一个压缩双向量 a m256d 将它们存储到内存中的不同位置 即我需要将它们扇出到不同的位置 以便它们不再打包 的最有效方法 即最少的操作数 是什么 伪代码 m256d
x86
x8664
SSE
avx
常见的 SIMD 技术
在哪里可以找到有关常见 SIMD 技巧的信息 我有一个指令集 并且知道如何编写不复杂的 SIMD 代码 但我知道 SIMD 现在更加强大 它可以容纳复杂的条件无分支代码 例如 ARMv6 以下指令序列将 Rd 的每个字节设置为 Ra 和 R
arm
SSE
SIMD
neon
mmx
SSE:如果不为零则倒数
如何使用 SSE 指令取浮点数的倒数 逆 但是仅适用于非零 values 背景如下 我想规范化向量数组 以便每个维度具有相同的平均值 在 C 中 可以将其编码为 float vectors num dim input data step 1
c
Normalization
SSE
«
1 ...
3
4
5
6
7
8
9
...11
»