18得票5回答
苹果的PowerPC memcpy为何如此快速?

我为了寻找一种好的PowerPC内存策略,编写了几个复制函数。使用Altivec或带有缓存提示(dcb*)的fp寄存器,对于大数据,与简单的字节复制循环相比,性能提高了一倍。最初对此感到满意,于是我加入了一个常规的memcpy来进行比较……它比我最好的快了10倍!我没有重写memcpy的意图,...

8得票1回答
高效将散列索引转换为聚合索引的方法?

我正在尝试使用SIMD指令编写流压缩程序(获取数组并摆脱空元素)。循环的每次迭代同时处理8个元素(SIMD宽度)。 使用SSE指令集,我可以使用_mm_shuffle_epi8()相当高效地完成此操作,该函数执行16个条目的表查找(在并行计算术语中称为gather)。洗牌索引是预先计算的,并...