整数除法主要用于什么?

rwa*_*ace 7 performance cpu-architecture division integer-division instructions

https://ridiculousfish.com/blog/posts/benchmarking-libdivide-m1-avx512.html的分析发现,新的 Apple CPU 花费了大量资源使整数除法速度大大加快。

这是一件令人惊讶的事情。根据我的经验,整数除法并没有真正使用,除非在除以编译时间常数的情况下,可以用移位或乘法代替。

更令人惊讶的是在https://news.ycombinator.com/item?id=27133804的讨论中有人说

当我一直在对性能关键代码进行微优化时,整数除法经常作为一个热点出现。

现在我真的很好奇:人们在做什么,使整数除法成为瓶颈?我正在考虑可以在哪里使用它。我见过的案例:

  • 浮点模拟。但是现在,唯一没有硬件浮点的 CPU 是微型微控制器,无论如何也不会有硬件整数除法。

  • 带有桶数的哈希表是素数,以获得一点额外的随机性。但是人们早就知道这不是最好的做事方式。如果您不相信您的散列函数提供足够的随机性,请获得更好的散列函数。

  • 使用固定点坐标的早期 3D,如 PlayStation 1。但是现在每个人都在做浮点 3D。

那么所有这些整数除法究竟是用来做什么的呢?