gpt4 book ai didi

c - 如何有效地交错 8 个 __int16 数字中的位?

转载 作者:太空宇宙 更新时间:2023-11-04 01:50:20 25 4
gpt4 key购买 nike

我正在为空间索引构建 Morton 数,我有 8 个无符号 16 位数字,它们将变成 __int128 数。效率至关重要,因此天真的解决方案(遍历所有内容)或构建单独的 8 个 128 位数字太昂贵了。

我正在使用 GCC,目标机器是 64 位但不支持 BMI2。

如何加快计算速度?

最佳答案

如果您的机器是 x86 并且支持 SSE2,那么使用 movmsk 指令有一个聪明的答案。 Google SSE2 位矩阵转置 获取完整代码。

关于c - 如何有效地交错 8 个 __int16 数字中的位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44559384/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com