相关疑难解决方法(0)

转换4x4字节矩阵的最快方法

我有一个4x4字节块,我想使用通用硬件进行转置.换句话说,对于字节AP,我正在寻找最有效(就指令数量而言)的方式

A B C D
E F G H
I J K L
M N O P
Run Code Online (Sandbox Code Playgroud)

A E I M
B F J N
C G K O
D H L P
Run Code Online (Sandbox Code Playgroud)

我们可以假设,我有有效指针指向A,E,I,并M在内存中(这样从读取32位将让我的包含整数字节ABCD).

由于对大小和数据类型的限制,这不是此问题的重复.我的矩阵的每一行都可以适合32位整数,我正在寻找可以使用通用硬件快速执行转置的答案,类似于SSE宏的实现_MM_TRANSPOSE4_PS.

c c++ optimization bit-manipulation matrix

7
推荐指数
2
解决办法
3634
查看次数

_mm256_lddqu_si256和_mm256_loadu_si256之间有什么区别

_mm256_lddqu_si256基于我在网上找到的一个例子,我一直在使用.后来我发现了_mm256_loadu_si256.英特尔内在函数指南仅指出lddqu版本在跨越缓存行边界时可能表现更好.可能有什么好处loadu?一般来说,这些功能有何不同?

x86 simd intrinsics avx micro-optimization

6
推荐指数
1
解决办法
903
查看次数