0

为了通过迭代对 PHP 进行基准测试,我考虑了一个大的 for 循环

for($j=0;$j<20000000;$j++)
    ;

在启用 eAccelerator 的 PHP 5.4 中执行相同的操作大约需要2.5 秒

.jsp 文件中的相同循环大约需要15 毫秒

for(int j=0;j<20000000;j++)
    ;

为什么两者之间有如此巨大的差异?有没有办法让它在 PHP 中运行得更快

4

2 回答 2

4

在 15ms 时,循环可能已由JIT优化。除非您使用HipHop VM, 否则您的PHP 循环真的没有机会

请记住,紧密循环的性能很难代表现实世界中实际工作负载的相对性能。改为查看 计算机语言基准游戏——甚至他们更有意义的测量也需要谨慎对待。

于 2012-11-12T03:33:01.583 回答
0

这些类型的微基准测试应该是无关紧要的。

无论如何,这个循环稍微快一点:

$i = 20000000;
while($i--);

http://benchmarksgame.alioth.debian.org/u32/compare.php?lang=java&lang2=php

于 2012-11-12T03:34:26.190 回答