我正在对每个像素执行32次比较的图像执行人口普查变换。我可以有效地生成一个0x0100010100010100的256位向量...其中每个8位对应于0x00或0x01。该载体在下面标识为“比较”。我需要折叠这个256位向量来生成一个32位的汉明字符串。阵列'人口普查'是我存储8位比较的地方。请注意,此时我并不关心汉明距离,我只对尽快生成字符串感兴趣。我有AVX2可供我使用。我目前的代码:
myApp.controller('FollowController', ['$scope', '$http',
function($scope, $http) {
var status = "";
var follow = this;
$http.get('/Home/CheckFollower?idToFollow=' + profileId + '&followerId=' + currentUserId).
success(function(data) {
//check if it is a follower
if (data) {
// Not following - Show unfollow
alert("1111");
follow.statusMessage = data;
} else {
//Following - show Follow
follow.statusMessage = data;
}
})
.error(function(data, status) {
console.log(data);
});
}
]);
答案 0 :(得分:5)
这几乎就是_mm256_movemask_epi8的用途,除了它取字节的最高位而不是最低有效位。所以先左转7。
或者,改变你产生这些字节的方式,因为你可能分别将它们设为0x00或0xFF为false和true,对吧?至少,通常比较会导致这种情况。