为什么MOD
的操作比multiplication
贵多了一点点factor of 2
?请更具体地说明CPU如何执行除法操作并返回MOD操作的结果。MOD操作比乘法更耗CPU吗?
在以下示例中,每个线程每秒运行一次。该测试在SPARC
处理器上执行。
// multiplication
void someThread() {
int a = 10234;
while (true) {
opers++;
a = a * a;
a++;
}
// opers ~ 26 * 10^6 in a sec.
}
// MOD
void someThread() {
int a = 10234;
while (true) {
opers++;
a = a % 10000007;
a++;
}
// opers ~ 12 * 10^6 in a sec.
}
这两个代码示例都是相同的。 – 2010-11-05 19:33:09
解决了这个问题。 – Leonid 2010-11-05 19:35:22
带'+'的版本在哪里? ^^ – 2010-11-05 19:51:53