【发布时间】:2015-04-01 10:46:42
【问题描述】:
我正在使用 OpenCL 的 shuffle 函数对 float3 向量进行排序,如下所示(忽略实际 4d 向量的最后一个分量):
uint4 mask = (uint4)(0,1,2,3);
mask.xyz = res.x < res.y ? (res.x >= res.z ? mask.yxz : mask.yzx) : (res.y >= res.z ? mask.xyz : mask.xzy);
float4 abcd = shuffle(res,mask);
然后我对向量abcd的每个分量进行操作,并想反转排序排列,如下:
uint4 inv_mask = ... // ???
res = shuffle(abcd,inv_mask); // Inverse the sorting permutation
如何有效地计算逆掩码?
【问题讨论】:
标签: bit-manipulation opencl intrinsics