上次排队那题,让我发现减少取余的次数可以减少很多时间。
然后查到一篇文章
高频率调用的函数一定要保证最优化,慎用除法和余数
原po显示404,所以只有别人转载的。
就是说:除法、取余的指令 CPU周期 可以达到加减法的80倍(周期越多越耗时),因此高频率使用的函数里,以及循环次数很大的循环里,可以通过减少除法次数和取余次数来优化。里面介绍了一些方法,比如用乘法、减法代替。
然后又看到另一篇文章
取模、乘法和除法运算在CPU和GPU上的效率
意思是好像取模运算并没有想象中的那么慢
对于CPU,最好采用取模运算,整数除法和单精度乘法的效率差不多。
对于GPU(是什么),采用浮点运算最快,其次是取模运算,整数除法最慢。