为了通过迭代对 PHP 进行基准测试,我考虑了一个大的 for 循环
for($j=0;$j<20000000;$j++)
;
在启用 eAccelerator 的 PHP 5.4 中执行相同的操作大约需要2.5 秒
.jsp 文件中的相同循环大约需要15 毫秒
for(int j=0;j<20000000;j++)
;
为什么两者之间有如此巨大的差异?有没有办法让它在 PHP 中运行得更快
为了通过迭代对 PHP 进行基准测试,我考虑了一个大的 for 循环
for($j=0;$j<20000000;$j++)
;
在启用 eAccelerator 的 PHP 5.4 中执行相同的操作大约需要2.5 秒
.jsp 文件中的相同循环大约需要15 毫秒
for(int j=0;j<20000000;j++)
;
为什么两者之间有如此巨大的差异?有没有办法让它在 PHP 中运行得更快
在 15ms 时,循环可能已由JIT优化。除非您使用HipHop VM, 否则您的PHP 循环真的没有机会。
请记住,紧密循环的性能很难代表现实世界中实际工作负载的相对性能。改为查看 计算机语言基准游戏——甚至他们更有意义的测量也需要谨慎对待。
这些类型的微基准测试应该是无关紧要的。
无论如何,这个循环稍微快一点:
$i = 20000000;
while($i--);
http://benchmarksgame.alioth.debian.org/u32/compare.php?lang=java&lang2=php