- 58
- 0
假设在一个1千万长度的数组中,基本可以肯定只有几十个数小于4。如果要统计具体小于4的数有多少,是否有比较高效率的方法。我现在的思路是,因为小于4的数很少,是否能减少if分支的数量,比如四个数为一组,因为即使四个位一组,if的结果也99%都为false,应该有利于分支预测,但是实际测试下来并没有一个提升。if(pb[i]<4||pb[i+1]<4||pb[i+2]<4||pb[i+3]<4){ //在逐一判断一次,看具体有几个数小于4}现在我想通过avx2指令做类似上述的操作。通过_mm256_cmpgt_epi64指令一次比较四个数,但是返回的也是__m256i类型,而且为true时,64个位填充的0xFFFFFFFFFFFFFFFF。这样的话,问题就转变成判读__m256i中的每个数是否都含有1,但是我找了半天没发现有这样的指令。我也不确定这样的做法是否有效率,只是想到了就想测试一下。求大家解惑。
0
打赏
收藏
点击回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

