> On 3 במרץ 2015, at 19:08, Anthony Ferrara <ircmax...@gmail.com> wrote: > > Zeev, > > On Tue, Mar 3, 2015 at 11:32 AM, Zeev Suraski <z...@zend.com> wrote: >>> It wins on uneven ground. >> >> Without the output buffering code it's a LOT more uneven, as the PHP version >> is flushing every byte - approx. 6,000 such flushes. > > Then the benchmark should suffer because of that. You're testing the > full stack of all of the other languages, yet disabling a significant > part of it for PHP and saying "it's still fair because that part of > the stack is expensive".
Yes, the part that has nothing at all to do with the benchmark at hand, and that changes on a per-SAPI basis and creates nothing but unrelated noise for this benchmark. As I repeatedly said, and as should be obvious to anybody looking at cpu-bound benchmarks like Mandelbrot, the idea is to focus on the algorithm and factor out everything else, which is exactly what the code for both PHP and C (as well as the other langs) does. If you haven't yet - run the new line-free C version that has full buffering. Spoiler: it has identical performance. Zeev